diff --git a/.changelog/unreleased/bug-fixes/376-fix-markdown-gen.md b/.changelog/unreleased/bug-fixes/376-fix-markdown-gen.md
new file mode 100644
index 000000000..e5a1ce31a
--- /dev/null
+++ b/.changelog/unreleased/bug-fixes/376-fix-markdown-gen.md
@@ -0,0 +1 @@
+* Fix proto markdown generation and regenerate proto-docs.md [#376](https://github.com/provenance-io/provenance/issues/376).
diff --git a/Makefile b/Makefile
index f271cd785..e77c4948e 100644
--- a/Makefile
+++ b/Makefile
@@ -473,9 +473,9 @@ indexer-db-down:
##############################
# Proto -> golang compilation
##############################
-proto-all: proto-update-deps proto-format proto-lint proto-check-breaking proto-check-breaking-third-party proto-gen proto-swagger-gen
+proto-all: proto-update-deps proto-format proto-lint proto-check-breaking proto-check-breaking-third-party proto-gen proto-swagger-gen proto-doc-gen
proto-checks: proto-update-deps proto-lint proto-check-breaking proto-check-breaking-third-party
-proto-regen: proto-format proto-gen proto-swagger-gen
+proto-regen: proto-format proto-gen proto-swagger-gen proto-doc-gen
protoVer=0.15.1
protoImageName=ghcr.io/cosmos/proto-builder:$(protoVer)
@@ -495,6 +495,10 @@ proto-swagger-gen:
@echo "Generating Protobuf Swagger"
$(protoImage) sh ./scripts/protoc-swagger-gen.sh
+proto-doc-gen:
+ @echo "Generating Protobuf Markdown"
+ ./scripts/proto-doc-gen.sh
+
proto-format:
@echo "Formatting Protobuf files"
$(protoImage) find . \
@@ -524,7 +528,7 @@ proto-update-deps:
@echo "Updating Protobuf files"
sh ./scripts/proto-update-deps.sh
-.PHONY: proto-all proto-checks proto-regen proto-gen proto-format proto-lint proto-check-breaking proto-check-breaking-third-party proto-update-deps proto-update-check
+.PHONY: proto-all proto-checks proto-regen proto-gen proto-format proto-lint proto-check-breaking proto-check-breaking-third-party proto-update-deps proto-update-check proto-doc-gen
##############################
diff --git a/docs/proto-docs.md b/docs/proto-docs.md
index 7df8e3fcf..58ad38a9a 100644
--- a/docs/proto-docs.md
+++ b/docs/proto-docs.md
@@ -1,1426 +1,1458 @@
-# Protobuf Documentation
+# Provenance API Documentation
## Table of Contents
-- [provenance/attribute/v1/attribute.proto](#provenance/attribute/v1/attribute.proto)
- - [Attribute](#provenance.attribute.v1.Attribute)
- - [EventAccountDataUpdated](#provenance.attribute.v1.EventAccountDataUpdated)
- - [EventAttributeAdd](#provenance.attribute.v1.EventAttributeAdd)
- - [EventAttributeDelete](#provenance.attribute.v1.EventAttributeDelete)
- - [EventAttributeDistinctDelete](#provenance.attribute.v1.EventAttributeDistinctDelete)
- - [EventAttributeExpirationUpdate](#provenance.attribute.v1.EventAttributeExpirationUpdate)
- - [EventAttributeExpired](#provenance.attribute.v1.EventAttributeExpired)
- - [EventAttributeUpdate](#provenance.attribute.v1.EventAttributeUpdate)
- - [Params](#provenance.attribute.v1.Params)
+- [cosmos/quarantine/v1beta1/tx.proto](#cosmos_quarantine_v1beta1_tx-proto)
+ - [MsgAccept](#cosmos-quarantine-v1beta1-MsgAccept)
+ - [MsgAcceptResponse](#cosmos-quarantine-v1beta1-MsgAcceptResponse)
+ - [MsgDecline](#cosmos-quarantine-v1beta1-MsgDecline)
+ - [MsgDeclineResponse](#cosmos-quarantine-v1beta1-MsgDeclineResponse)
+ - [MsgOptIn](#cosmos-quarantine-v1beta1-MsgOptIn)
+ - [MsgOptInResponse](#cosmos-quarantine-v1beta1-MsgOptInResponse)
+ - [MsgOptOut](#cosmos-quarantine-v1beta1-MsgOptOut)
+ - [MsgOptOutResponse](#cosmos-quarantine-v1beta1-MsgOptOutResponse)
+ - [MsgUpdateAutoResponses](#cosmos-quarantine-v1beta1-MsgUpdateAutoResponses)
+ - [MsgUpdateAutoResponsesResponse](#cosmos-quarantine-v1beta1-MsgUpdateAutoResponsesResponse)
- - [AttributeType](#provenance.attribute.v1.AttributeType)
+ - [Msg](#cosmos-quarantine-v1beta1-Msg)
-- [provenance/attribute/v1/genesis.proto](#provenance/attribute/v1/genesis.proto)
- - [GenesisState](#provenance.attribute.v1.GenesisState)
+- [cosmos/quarantine/v1beta1/events.proto](#cosmos_quarantine_v1beta1_events-proto)
+ - [EventFundsQuarantined](#cosmos-quarantine-v1beta1-EventFundsQuarantined)
+ - [EventFundsReleased](#cosmos-quarantine-v1beta1-EventFundsReleased)
+ - [EventOptIn](#cosmos-quarantine-v1beta1-EventOptIn)
+ - [EventOptOut](#cosmos-quarantine-v1beta1-EventOptOut)
-- [provenance/attribute/v1/query.proto](#provenance/attribute/v1/query.proto)
- - [QueryAccountDataRequest](#provenance.attribute.v1.QueryAccountDataRequest)
- - [QueryAccountDataResponse](#provenance.attribute.v1.QueryAccountDataResponse)
- - [QueryAttributeAccountsRequest](#provenance.attribute.v1.QueryAttributeAccountsRequest)
- - [QueryAttributeAccountsResponse](#provenance.attribute.v1.QueryAttributeAccountsResponse)
- - [QueryAttributeRequest](#provenance.attribute.v1.QueryAttributeRequest)
- - [QueryAttributeResponse](#provenance.attribute.v1.QueryAttributeResponse)
- - [QueryAttributesRequest](#provenance.attribute.v1.QueryAttributesRequest)
- - [QueryAttributesResponse](#provenance.attribute.v1.QueryAttributesResponse)
- - [QueryParamsRequest](#provenance.attribute.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.attribute.v1.QueryParamsResponse)
- - [QueryScanRequest](#provenance.attribute.v1.QueryScanRequest)
- - [QueryScanResponse](#provenance.attribute.v1.QueryScanResponse)
+- [cosmos/quarantine/v1beta1/query.proto](#cosmos_quarantine_v1beta1_query-proto)
+ - [QueryAutoResponsesRequest](#cosmos-quarantine-v1beta1-QueryAutoResponsesRequest)
+ - [QueryAutoResponsesResponse](#cosmos-quarantine-v1beta1-QueryAutoResponsesResponse)
+ - [QueryIsQuarantinedRequest](#cosmos-quarantine-v1beta1-QueryIsQuarantinedRequest)
+ - [QueryIsQuarantinedResponse](#cosmos-quarantine-v1beta1-QueryIsQuarantinedResponse)
+ - [QueryQuarantinedFundsRequest](#cosmos-quarantine-v1beta1-QueryQuarantinedFundsRequest)
+ - [QueryQuarantinedFundsResponse](#cosmos-quarantine-v1beta1-QueryQuarantinedFundsResponse)
- - [Query](#provenance.attribute.v1.Query)
+ - [Query](#cosmos-quarantine-v1beta1-Query)
-- [provenance/attribute/v1/tx.proto](#provenance/attribute/v1/tx.proto)
- - [MsgAddAttributeRequest](#provenance.attribute.v1.MsgAddAttributeRequest)
- - [MsgAddAttributeResponse](#provenance.attribute.v1.MsgAddAttributeResponse)
- - [MsgDeleteAttributeRequest](#provenance.attribute.v1.MsgDeleteAttributeRequest)
- - [MsgDeleteAttributeResponse](#provenance.attribute.v1.MsgDeleteAttributeResponse)
- - [MsgDeleteDistinctAttributeRequest](#provenance.attribute.v1.MsgDeleteDistinctAttributeRequest)
- - [MsgDeleteDistinctAttributeResponse](#provenance.attribute.v1.MsgDeleteDistinctAttributeResponse)
- - [MsgSetAccountDataRequest](#provenance.attribute.v1.MsgSetAccountDataRequest)
- - [MsgSetAccountDataResponse](#provenance.attribute.v1.MsgSetAccountDataResponse)
- - [MsgUpdateAttributeExpirationRequest](#provenance.attribute.v1.MsgUpdateAttributeExpirationRequest)
- - [MsgUpdateAttributeExpirationResponse](#provenance.attribute.v1.MsgUpdateAttributeExpirationResponse)
- - [MsgUpdateAttributeRequest](#provenance.attribute.v1.MsgUpdateAttributeRequest)
- - [MsgUpdateAttributeResponse](#provenance.attribute.v1.MsgUpdateAttributeResponse)
+- [cosmos/quarantine/v1beta1/quarantine.proto](#cosmos_quarantine_v1beta1_quarantine-proto)
+ - [AutoResponseEntry](#cosmos-quarantine-v1beta1-AutoResponseEntry)
+ - [AutoResponseUpdate](#cosmos-quarantine-v1beta1-AutoResponseUpdate)
+ - [QuarantineRecord](#cosmos-quarantine-v1beta1-QuarantineRecord)
+ - [QuarantineRecordSuffixIndex](#cosmos-quarantine-v1beta1-QuarantineRecordSuffixIndex)
+ - [QuarantinedFunds](#cosmos-quarantine-v1beta1-QuarantinedFunds)
- - [Msg](#provenance.attribute.v1.Msg)
+ - [AutoResponse](#cosmos-quarantine-v1beta1-AutoResponse)
-- [provenance/exchange/v1/commitments.proto](#provenance/exchange/v1/commitments.proto)
- - [AccountAmount](#provenance.exchange.v1.AccountAmount)
- - [Commitment](#provenance.exchange.v1.Commitment)
- - [MarketAmount](#provenance.exchange.v1.MarketAmount)
- - [NetAssetPrice](#provenance.exchange.v1.NetAssetPrice)
+- [cosmos/quarantine/v1beta1/genesis.proto](#cosmos_quarantine_v1beta1_genesis-proto)
+ - [GenesisState](#cosmos-quarantine-v1beta1-GenesisState)
-- [provenance/exchange/v1/events.proto](#provenance/exchange/v1/events.proto)
- - [EventCommitmentReleased](#provenance.exchange.v1.EventCommitmentReleased)
- - [EventFundsCommitted](#provenance.exchange.v1.EventFundsCommitted)
- - [EventMarketCommitmentsDisabled](#provenance.exchange.v1.EventMarketCommitmentsDisabled)
- - [EventMarketCommitmentsEnabled](#provenance.exchange.v1.EventMarketCommitmentsEnabled)
- - [EventMarketCreated](#provenance.exchange.v1.EventMarketCreated)
- - [EventMarketDetailsUpdated](#provenance.exchange.v1.EventMarketDetailsUpdated)
- - [EventMarketDisabled](#provenance.exchange.v1.EventMarketDisabled)
- - [EventMarketEnabled](#provenance.exchange.v1.EventMarketEnabled)
- - [EventMarketFeesUpdated](#provenance.exchange.v1.EventMarketFeesUpdated)
- - [EventMarketIntermediaryDenomUpdated](#provenance.exchange.v1.EventMarketIntermediaryDenomUpdated)
- - [EventMarketOrdersDisabled](#provenance.exchange.v1.EventMarketOrdersDisabled)
- - [EventMarketOrdersEnabled](#provenance.exchange.v1.EventMarketOrdersEnabled)
- - [EventMarketPermissionsUpdated](#provenance.exchange.v1.EventMarketPermissionsUpdated)
- - [EventMarketReqAttrUpdated](#provenance.exchange.v1.EventMarketReqAttrUpdated)
- - [EventMarketUserSettleDisabled](#provenance.exchange.v1.EventMarketUserSettleDisabled)
- - [EventMarketUserSettleEnabled](#provenance.exchange.v1.EventMarketUserSettleEnabled)
- - [EventMarketWithdraw](#provenance.exchange.v1.EventMarketWithdraw)
- - [EventOrderCancelled](#provenance.exchange.v1.EventOrderCancelled)
- - [EventOrderCreated](#provenance.exchange.v1.EventOrderCreated)
- - [EventOrderExternalIDUpdated](#provenance.exchange.v1.EventOrderExternalIDUpdated)
- - [EventOrderFilled](#provenance.exchange.v1.EventOrderFilled)
- - [EventOrderPartiallyFilled](#provenance.exchange.v1.EventOrderPartiallyFilled)
- - [EventParamsUpdated](#provenance.exchange.v1.EventParamsUpdated)
- - [EventPaymentAccepted](#provenance.exchange.v1.EventPaymentAccepted)
- - [EventPaymentCancelled](#provenance.exchange.v1.EventPaymentCancelled)
- - [EventPaymentCreated](#provenance.exchange.v1.EventPaymentCreated)
- - [EventPaymentRejected](#provenance.exchange.v1.EventPaymentRejected)
- - [EventPaymentUpdated](#provenance.exchange.v1.EventPaymentUpdated)
+- [cosmos/sanction/v1beta1/tx.proto](#cosmos_sanction_v1beta1_tx-proto)
+ - [MsgSanction](#cosmos-sanction-v1beta1-MsgSanction)
+ - [MsgSanctionResponse](#cosmos-sanction-v1beta1-MsgSanctionResponse)
+ - [MsgUnsanction](#cosmos-sanction-v1beta1-MsgUnsanction)
+ - [MsgUnsanctionResponse](#cosmos-sanction-v1beta1-MsgUnsanctionResponse)
+ - [MsgUpdateParams](#cosmos-sanction-v1beta1-MsgUpdateParams)
+ - [MsgUpdateParamsResponse](#cosmos-sanction-v1beta1-MsgUpdateParamsResponse)
-- [provenance/exchange/v1/market.proto](#provenance/exchange/v1/market.proto)
- - [AccessGrant](#provenance.exchange.v1.AccessGrant)
- - [FeeRatio](#provenance.exchange.v1.FeeRatio)
- - [Market](#provenance.exchange.v1.Market)
- - [MarketAccount](#provenance.exchange.v1.MarketAccount)
- - [MarketBrief](#provenance.exchange.v1.MarketBrief)
- - [MarketDetails](#provenance.exchange.v1.MarketDetails)
+ - [Msg](#cosmos-sanction-v1beta1-Msg)
- - [Permission](#provenance.exchange.v1.Permission)
+- [cosmos/sanction/v1beta1/events.proto](#cosmos_sanction_v1beta1_events-proto)
+ - [EventAddressSanctioned](#cosmos-sanction-v1beta1-EventAddressSanctioned)
+ - [EventAddressUnsanctioned](#cosmos-sanction-v1beta1-EventAddressUnsanctioned)
+ - [EventParamsUpdated](#cosmos-sanction-v1beta1-EventParamsUpdated)
+ - [EventTempAddressSanctioned](#cosmos-sanction-v1beta1-EventTempAddressSanctioned)
+ - [EventTempAddressUnsanctioned](#cosmos-sanction-v1beta1-EventTempAddressUnsanctioned)
-- [provenance/exchange/v1/orders.proto](#provenance/exchange/v1/orders.proto)
- - [AskOrder](#provenance.exchange.v1.AskOrder)
- - [BidOrder](#provenance.exchange.v1.BidOrder)
- - [Order](#provenance.exchange.v1.Order)
+- [cosmos/sanction/v1beta1/query.proto](#cosmos_sanction_v1beta1_query-proto)
+ - [QueryIsSanctionedRequest](#cosmos-sanction-v1beta1-QueryIsSanctionedRequest)
+ - [QueryIsSanctionedResponse](#cosmos-sanction-v1beta1-QueryIsSanctionedResponse)
+ - [QueryParamsRequest](#cosmos-sanction-v1beta1-QueryParamsRequest)
+ - [QueryParamsResponse](#cosmos-sanction-v1beta1-QueryParamsResponse)
+ - [QuerySanctionedAddressesRequest](#cosmos-sanction-v1beta1-QuerySanctionedAddressesRequest)
+ - [QuerySanctionedAddressesResponse](#cosmos-sanction-v1beta1-QuerySanctionedAddressesResponse)
+ - [QueryTemporaryEntriesRequest](#cosmos-sanction-v1beta1-QueryTemporaryEntriesRequest)
+ - [QueryTemporaryEntriesResponse](#cosmos-sanction-v1beta1-QueryTemporaryEntriesResponse)
-- [provenance/exchange/v1/params.proto](#provenance/exchange/v1/params.proto)
- - [DenomSplit](#provenance.exchange.v1.DenomSplit)
- - [Params](#provenance.exchange.v1.Params)
+ - [Query](#cosmos-sanction-v1beta1-Query)
-- [provenance/exchange/v1/payments.proto](#provenance/exchange/v1/payments.proto)
- - [Payment](#provenance.exchange.v1.Payment)
+- [cosmos/sanction/v1beta1/genesis.proto](#cosmos_sanction_v1beta1_genesis-proto)
+ - [GenesisState](#cosmos-sanction-v1beta1-GenesisState)
-- [provenance/exchange/v1/genesis.proto](#provenance/exchange/v1/genesis.proto)
- - [GenesisState](#provenance.exchange.v1.GenesisState)
+- [cosmos/sanction/v1beta1/sanction.proto](#cosmos_sanction_v1beta1_sanction-proto)
+ - [Params](#cosmos-sanction-v1beta1-Params)
+ - [TemporaryEntry](#cosmos-sanction-v1beta1-TemporaryEntry)
-- [provenance/exchange/v1/tx.proto](#provenance/exchange/v1/tx.proto)
- - [MsgAcceptPaymentRequest](#provenance.exchange.v1.MsgAcceptPaymentRequest)
- - [MsgAcceptPaymentResponse](#provenance.exchange.v1.MsgAcceptPaymentResponse)
- - [MsgCancelOrderRequest](#provenance.exchange.v1.MsgCancelOrderRequest)
- - [MsgCancelOrderResponse](#provenance.exchange.v1.MsgCancelOrderResponse)
- - [MsgCancelPaymentsRequest](#provenance.exchange.v1.MsgCancelPaymentsRequest)
- - [MsgCancelPaymentsResponse](#provenance.exchange.v1.MsgCancelPaymentsResponse)
- - [MsgChangePaymentTargetRequest](#provenance.exchange.v1.MsgChangePaymentTargetRequest)
- - [MsgChangePaymentTargetResponse](#provenance.exchange.v1.MsgChangePaymentTargetResponse)
- - [MsgCommitFundsRequest](#provenance.exchange.v1.MsgCommitFundsRequest)
- - [MsgCommitFundsResponse](#provenance.exchange.v1.MsgCommitFundsResponse)
- - [MsgCreateAskRequest](#provenance.exchange.v1.MsgCreateAskRequest)
- - [MsgCreateAskResponse](#provenance.exchange.v1.MsgCreateAskResponse)
- - [MsgCreateBidRequest](#provenance.exchange.v1.MsgCreateBidRequest)
- - [MsgCreateBidResponse](#provenance.exchange.v1.MsgCreateBidResponse)
- - [MsgCreatePaymentRequest](#provenance.exchange.v1.MsgCreatePaymentRequest)
- - [MsgCreatePaymentResponse](#provenance.exchange.v1.MsgCreatePaymentResponse)
- - [MsgFillAsksRequest](#provenance.exchange.v1.MsgFillAsksRequest)
- - [MsgFillAsksResponse](#provenance.exchange.v1.MsgFillAsksResponse)
- - [MsgFillBidsRequest](#provenance.exchange.v1.MsgFillBidsRequest)
- - [MsgFillBidsResponse](#provenance.exchange.v1.MsgFillBidsResponse)
- - [MsgGovCloseMarketRequest](#provenance.exchange.v1.MsgGovCloseMarketRequest)
- - [MsgGovCloseMarketResponse](#provenance.exchange.v1.MsgGovCloseMarketResponse)
- - [MsgGovCreateMarketRequest](#provenance.exchange.v1.MsgGovCreateMarketRequest)
- - [MsgGovCreateMarketResponse](#provenance.exchange.v1.MsgGovCreateMarketResponse)
- - [MsgGovManageFeesRequest](#provenance.exchange.v1.MsgGovManageFeesRequest)
- - [MsgGovManageFeesResponse](#provenance.exchange.v1.MsgGovManageFeesResponse)
- - [MsgGovUpdateParamsRequest](#provenance.exchange.v1.MsgGovUpdateParamsRequest)
- - [MsgGovUpdateParamsResponse](#provenance.exchange.v1.MsgGovUpdateParamsResponse)
- - [MsgMarketCommitmentSettleRequest](#provenance.exchange.v1.MsgMarketCommitmentSettleRequest)
- - [MsgMarketCommitmentSettleResponse](#provenance.exchange.v1.MsgMarketCommitmentSettleResponse)
- - [MsgMarketManagePermissionsRequest](#provenance.exchange.v1.MsgMarketManagePermissionsRequest)
- - [MsgMarketManagePermissionsResponse](#provenance.exchange.v1.MsgMarketManagePermissionsResponse)
- - [MsgMarketManageReqAttrsRequest](#provenance.exchange.v1.MsgMarketManageReqAttrsRequest)
- - [MsgMarketManageReqAttrsResponse](#provenance.exchange.v1.MsgMarketManageReqAttrsResponse)
- - [MsgMarketReleaseCommitmentsRequest](#provenance.exchange.v1.MsgMarketReleaseCommitmentsRequest)
- - [MsgMarketReleaseCommitmentsResponse](#provenance.exchange.v1.MsgMarketReleaseCommitmentsResponse)
- - [MsgMarketSetOrderExternalIDRequest](#provenance.exchange.v1.MsgMarketSetOrderExternalIDRequest)
- - [MsgMarketSetOrderExternalIDResponse](#provenance.exchange.v1.MsgMarketSetOrderExternalIDResponse)
- - [MsgMarketSettleRequest](#provenance.exchange.v1.MsgMarketSettleRequest)
- - [MsgMarketSettleResponse](#provenance.exchange.v1.MsgMarketSettleResponse)
- - [MsgMarketUpdateAcceptingCommitmentsRequest](#provenance.exchange.v1.MsgMarketUpdateAcceptingCommitmentsRequest)
- - [MsgMarketUpdateAcceptingCommitmentsResponse](#provenance.exchange.v1.MsgMarketUpdateAcceptingCommitmentsResponse)
- - [MsgMarketUpdateAcceptingOrdersRequest](#provenance.exchange.v1.MsgMarketUpdateAcceptingOrdersRequest)
- - [MsgMarketUpdateAcceptingOrdersResponse](#provenance.exchange.v1.MsgMarketUpdateAcceptingOrdersResponse)
- - [MsgMarketUpdateDetailsRequest](#provenance.exchange.v1.MsgMarketUpdateDetailsRequest)
- - [MsgMarketUpdateDetailsResponse](#provenance.exchange.v1.MsgMarketUpdateDetailsResponse)
- - [MsgMarketUpdateEnabledRequest](#provenance.exchange.v1.MsgMarketUpdateEnabledRequest)
- - [MsgMarketUpdateEnabledResponse](#provenance.exchange.v1.MsgMarketUpdateEnabledResponse)
- - [MsgMarketUpdateIntermediaryDenomRequest](#provenance.exchange.v1.MsgMarketUpdateIntermediaryDenomRequest)
- - [MsgMarketUpdateIntermediaryDenomResponse](#provenance.exchange.v1.MsgMarketUpdateIntermediaryDenomResponse)
- - [MsgMarketUpdateUserSettleRequest](#provenance.exchange.v1.MsgMarketUpdateUserSettleRequest)
- - [MsgMarketUpdateUserSettleResponse](#provenance.exchange.v1.MsgMarketUpdateUserSettleResponse)
- - [MsgMarketWithdrawRequest](#provenance.exchange.v1.MsgMarketWithdrawRequest)
- - [MsgMarketWithdrawResponse](#provenance.exchange.v1.MsgMarketWithdrawResponse)
- - [MsgRejectPaymentRequest](#provenance.exchange.v1.MsgRejectPaymentRequest)
- - [MsgRejectPaymentResponse](#provenance.exchange.v1.MsgRejectPaymentResponse)
- - [MsgRejectPaymentsRequest](#provenance.exchange.v1.MsgRejectPaymentsRequest)
- - [MsgRejectPaymentsResponse](#provenance.exchange.v1.MsgRejectPaymentsResponse)
+ - [TempStatus](#cosmos-sanction-v1beta1-TempStatus)
- - [Msg](#provenance.exchange.v1.Msg)
+- [provenance/exchange/v1/tx.proto](#provenance_exchange_v1_tx-proto)
+ - [MsgAcceptPaymentRequest](#provenance-exchange-v1-MsgAcceptPaymentRequest)
+ - [MsgAcceptPaymentResponse](#provenance-exchange-v1-MsgAcceptPaymentResponse)
+ - [MsgCancelOrderRequest](#provenance-exchange-v1-MsgCancelOrderRequest)
+ - [MsgCancelOrderResponse](#provenance-exchange-v1-MsgCancelOrderResponse)
+ - [MsgCancelPaymentsRequest](#provenance-exchange-v1-MsgCancelPaymentsRequest)
+ - [MsgCancelPaymentsResponse](#provenance-exchange-v1-MsgCancelPaymentsResponse)
+ - [MsgChangePaymentTargetRequest](#provenance-exchange-v1-MsgChangePaymentTargetRequest)
+ - [MsgChangePaymentTargetResponse](#provenance-exchange-v1-MsgChangePaymentTargetResponse)
+ - [MsgCommitFundsRequest](#provenance-exchange-v1-MsgCommitFundsRequest)
+ - [MsgCommitFundsResponse](#provenance-exchange-v1-MsgCommitFundsResponse)
+ - [MsgCreateAskRequest](#provenance-exchange-v1-MsgCreateAskRequest)
+ - [MsgCreateAskResponse](#provenance-exchange-v1-MsgCreateAskResponse)
+ - [MsgCreateBidRequest](#provenance-exchange-v1-MsgCreateBidRequest)
+ - [MsgCreateBidResponse](#provenance-exchange-v1-MsgCreateBidResponse)
+ - [MsgCreatePaymentRequest](#provenance-exchange-v1-MsgCreatePaymentRequest)
+ - [MsgCreatePaymentResponse](#provenance-exchange-v1-MsgCreatePaymentResponse)
+ - [MsgFillAsksRequest](#provenance-exchange-v1-MsgFillAsksRequest)
+ - [MsgFillAsksResponse](#provenance-exchange-v1-MsgFillAsksResponse)
+ - [MsgFillBidsRequest](#provenance-exchange-v1-MsgFillBidsRequest)
+ - [MsgFillBidsResponse](#provenance-exchange-v1-MsgFillBidsResponse)
+ - [MsgGovCloseMarketRequest](#provenance-exchange-v1-MsgGovCloseMarketRequest)
+ - [MsgGovCloseMarketResponse](#provenance-exchange-v1-MsgGovCloseMarketResponse)
+ - [MsgGovCreateMarketRequest](#provenance-exchange-v1-MsgGovCreateMarketRequest)
+ - [MsgGovCreateMarketResponse](#provenance-exchange-v1-MsgGovCreateMarketResponse)
+ - [MsgGovManageFeesRequest](#provenance-exchange-v1-MsgGovManageFeesRequest)
+ - [MsgGovManageFeesResponse](#provenance-exchange-v1-MsgGovManageFeesResponse)
+ - [MsgGovUpdateParamsRequest](#provenance-exchange-v1-MsgGovUpdateParamsRequest)
+ - [MsgGovUpdateParamsResponse](#provenance-exchange-v1-MsgGovUpdateParamsResponse)
+ - [MsgMarketCommitmentSettleRequest](#provenance-exchange-v1-MsgMarketCommitmentSettleRequest)
+ - [MsgMarketCommitmentSettleResponse](#provenance-exchange-v1-MsgMarketCommitmentSettleResponse)
+ - [MsgMarketManagePermissionsRequest](#provenance-exchange-v1-MsgMarketManagePermissionsRequest)
+ - [MsgMarketManagePermissionsResponse](#provenance-exchange-v1-MsgMarketManagePermissionsResponse)
+ - [MsgMarketManageReqAttrsRequest](#provenance-exchange-v1-MsgMarketManageReqAttrsRequest)
+ - [MsgMarketManageReqAttrsResponse](#provenance-exchange-v1-MsgMarketManageReqAttrsResponse)
+ - [MsgMarketReleaseCommitmentsRequest](#provenance-exchange-v1-MsgMarketReleaseCommitmentsRequest)
+ - [MsgMarketReleaseCommitmentsResponse](#provenance-exchange-v1-MsgMarketReleaseCommitmentsResponse)
+ - [MsgMarketSetOrderExternalIDRequest](#provenance-exchange-v1-MsgMarketSetOrderExternalIDRequest)
+ - [MsgMarketSetOrderExternalIDResponse](#provenance-exchange-v1-MsgMarketSetOrderExternalIDResponse)
+ - [MsgMarketSettleRequest](#provenance-exchange-v1-MsgMarketSettleRequest)
+ - [MsgMarketSettleResponse](#provenance-exchange-v1-MsgMarketSettleResponse)
+ - [MsgMarketUpdateAcceptingCommitmentsRequest](#provenance-exchange-v1-MsgMarketUpdateAcceptingCommitmentsRequest)
+ - [MsgMarketUpdateAcceptingCommitmentsResponse](#provenance-exchange-v1-MsgMarketUpdateAcceptingCommitmentsResponse)
+ - [MsgMarketUpdateAcceptingOrdersRequest](#provenance-exchange-v1-MsgMarketUpdateAcceptingOrdersRequest)
+ - [MsgMarketUpdateAcceptingOrdersResponse](#provenance-exchange-v1-MsgMarketUpdateAcceptingOrdersResponse)
+ - [MsgMarketUpdateDetailsRequest](#provenance-exchange-v1-MsgMarketUpdateDetailsRequest)
+ - [MsgMarketUpdateDetailsResponse](#provenance-exchange-v1-MsgMarketUpdateDetailsResponse)
+ - [MsgMarketUpdateEnabledRequest](#provenance-exchange-v1-MsgMarketUpdateEnabledRequest)
+ - [MsgMarketUpdateEnabledResponse](#provenance-exchange-v1-MsgMarketUpdateEnabledResponse)
+ - [MsgMarketUpdateIntermediaryDenomRequest](#provenance-exchange-v1-MsgMarketUpdateIntermediaryDenomRequest)
+ - [MsgMarketUpdateIntermediaryDenomResponse](#provenance-exchange-v1-MsgMarketUpdateIntermediaryDenomResponse)
+ - [MsgMarketUpdateUserSettleRequest](#provenance-exchange-v1-MsgMarketUpdateUserSettleRequest)
+ - [MsgMarketUpdateUserSettleResponse](#provenance-exchange-v1-MsgMarketUpdateUserSettleResponse)
+ - [MsgMarketWithdrawRequest](#provenance-exchange-v1-MsgMarketWithdrawRequest)
+ - [MsgMarketWithdrawResponse](#provenance-exchange-v1-MsgMarketWithdrawResponse)
+ - [MsgRejectPaymentRequest](#provenance-exchange-v1-MsgRejectPaymentRequest)
+ - [MsgRejectPaymentResponse](#provenance-exchange-v1-MsgRejectPaymentResponse)
+ - [MsgRejectPaymentsRequest](#provenance-exchange-v1-MsgRejectPaymentsRequest)
+ - [MsgRejectPaymentsResponse](#provenance-exchange-v1-MsgRejectPaymentsResponse)
+ - [MsgUpdateParamsRequest](#provenance-exchange-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-exchange-v1-MsgUpdateParamsResponse)
-- [provenance/exchange/v1/query.proto](#provenance/exchange/v1/query.proto)
- - [QueryCommitmentSettlementFeeCalcRequest](#provenance.exchange.v1.QueryCommitmentSettlementFeeCalcRequest)
- - [QueryCommitmentSettlementFeeCalcResponse](#provenance.exchange.v1.QueryCommitmentSettlementFeeCalcResponse)
- - [QueryGetAccountCommitmentsRequest](#provenance.exchange.v1.QueryGetAccountCommitmentsRequest)
- - [QueryGetAccountCommitmentsResponse](#provenance.exchange.v1.QueryGetAccountCommitmentsResponse)
- - [QueryGetAllCommitmentsRequest](#provenance.exchange.v1.QueryGetAllCommitmentsRequest)
- - [QueryGetAllCommitmentsResponse](#provenance.exchange.v1.QueryGetAllCommitmentsResponse)
- - [QueryGetAllMarketsRequest](#provenance.exchange.v1.QueryGetAllMarketsRequest)
- - [QueryGetAllMarketsResponse](#provenance.exchange.v1.QueryGetAllMarketsResponse)
- - [QueryGetAllOrdersRequest](#provenance.exchange.v1.QueryGetAllOrdersRequest)
- - [QueryGetAllOrdersResponse](#provenance.exchange.v1.QueryGetAllOrdersResponse)
- - [QueryGetAllPaymentsRequest](#provenance.exchange.v1.QueryGetAllPaymentsRequest)
- - [QueryGetAllPaymentsResponse](#provenance.exchange.v1.QueryGetAllPaymentsResponse)
- - [QueryGetAssetOrdersRequest](#provenance.exchange.v1.QueryGetAssetOrdersRequest)
- - [QueryGetAssetOrdersResponse](#provenance.exchange.v1.QueryGetAssetOrdersResponse)
- - [QueryGetCommitmentRequest](#provenance.exchange.v1.QueryGetCommitmentRequest)
- - [QueryGetCommitmentResponse](#provenance.exchange.v1.QueryGetCommitmentResponse)
- - [QueryGetMarketCommitmentsRequest](#provenance.exchange.v1.QueryGetMarketCommitmentsRequest)
- - [QueryGetMarketCommitmentsResponse](#provenance.exchange.v1.QueryGetMarketCommitmentsResponse)
- - [QueryGetMarketOrdersRequest](#provenance.exchange.v1.QueryGetMarketOrdersRequest)
- - [QueryGetMarketOrdersResponse](#provenance.exchange.v1.QueryGetMarketOrdersResponse)
- - [QueryGetMarketRequest](#provenance.exchange.v1.QueryGetMarketRequest)
- - [QueryGetMarketResponse](#provenance.exchange.v1.QueryGetMarketResponse)
- - [QueryGetOrderByExternalIDRequest](#provenance.exchange.v1.QueryGetOrderByExternalIDRequest)
- - [QueryGetOrderByExternalIDResponse](#provenance.exchange.v1.QueryGetOrderByExternalIDResponse)
- - [QueryGetOrderRequest](#provenance.exchange.v1.QueryGetOrderRequest)
- - [QueryGetOrderResponse](#provenance.exchange.v1.QueryGetOrderResponse)
- - [QueryGetOwnerOrdersRequest](#provenance.exchange.v1.QueryGetOwnerOrdersRequest)
- - [QueryGetOwnerOrdersResponse](#provenance.exchange.v1.QueryGetOwnerOrdersResponse)
- - [QueryGetPaymentRequest](#provenance.exchange.v1.QueryGetPaymentRequest)
- - [QueryGetPaymentResponse](#provenance.exchange.v1.QueryGetPaymentResponse)
- - [QueryGetPaymentsWithSourceRequest](#provenance.exchange.v1.QueryGetPaymentsWithSourceRequest)
- - [QueryGetPaymentsWithSourceResponse](#provenance.exchange.v1.QueryGetPaymentsWithSourceResponse)
- - [QueryGetPaymentsWithTargetRequest](#provenance.exchange.v1.QueryGetPaymentsWithTargetRequest)
- - [QueryGetPaymentsWithTargetResponse](#provenance.exchange.v1.QueryGetPaymentsWithTargetResponse)
- - [QueryOrderFeeCalcRequest](#provenance.exchange.v1.QueryOrderFeeCalcRequest)
- - [QueryOrderFeeCalcResponse](#provenance.exchange.v1.QueryOrderFeeCalcResponse)
- - [QueryParamsRequest](#provenance.exchange.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.exchange.v1.QueryParamsResponse)
- - [QueryPaymentFeeCalcRequest](#provenance.exchange.v1.QueryPaymentFeeCalcRequest)
- - [QueryPaymentFeeCalcResponse](#provenance.exchange.v1.QueryPaymentFeeCalcResponse)
- - [QueryValidateCreateMarketRequest](#provenance.exchange.v1.QueryValidateCreateMarketRequest)
- - [QueryValidateCreateMarketResponse](#provenance.exchange.v1.QueryValidateCreateMarketResponse)
- - [QueryValidateManageFeesRequest](#provenance.exchange.v1.QueryValidateManageFeesRequest)
- - [QueryValidateManageFeesResponse](#provenance.exchange.v1.QueryValidateManageFeesResponse)
- - [QueryValidateMarketRequest](#provenance.exchange.v1.QueryValidateMarketRequest)
- - [QueryValidateMarketResponse](#provenance.exchange.v1.QueryValidateMarketResponse)
+ - [Msg](#provenance-exchange-v1-Msg)
- - [Query](#provenance.exchange.v1.Query)
+- [provenance/exchange/v1/events.proto](#provenance_exchange_v1_events-proto)
+ - [EventCommitmentReleased](#provenance-exchange-v1-EventCommitmentReleased)
+ - [EventFundsCommitted](#provenance-exchange-v1-EventFundsCommitted)
+ - [EventMarketCommitmentsDisabled](#provenance-exchange-v1-EventMarketCommitmentsDisabled)
+ - [EventMarketCommitmentsEnabled](#provenance-exchange-v1-EventMarketCommitmentsEnabled)
+ - [EventMarketCreated](#provenance-exchange-v1-EventMarketCreated)
+ - [EventMarketDetailsUpdated](#provenance-exchange-v1-EventMarketDetailsUpdated)
+ - [EventMarketDisabled](#provenance-exchange-v1-EventMarketDisabled)
+ - [EventMarketEnabled](#provenance-exchange-v1-EventMarketEnabled)
+ - [EventMarketFeesUpdated](#provenance-exchange-v1-EventMarketFeesUpdated)
+ - [EventMarketIntermediaryDenomUpdated](#provenance-exchange-v1-EventMarketIntermediaryDenomUpdated)
+ - [EventMarketOrdersDisabled](#provenance-exchange-v1-EventMarketOrdersDisabled)
+ - [EventMarketOrdersEnabled](#provenance-exchange-v1-EventMarketOrdersEnabled)
+ - [EventMarketPermissionsUpdated](#provenance-exchange-v1-EventMarketPermissionsUpdated)
+ - [EventMarketReqAttrUpdated](#provenance-exchange-v1-EventMarketReqAttrUpdated)
+ - [EventMarketUserSettleDisabled](#provenance-exchange-v1-EventMarketUserSettleDisabled)
+ - [EventMarketUserSettleEnabled](#provenance-exchange-v1-EventMarketUserSettleEnabled)
+ - [EventMarketWithdraw](#provenance-exchange-v1-EventMarketWithdraw)
+ - [EventOrderCancelled](#provenance-exchange-v1-EventOrderCancelled)
+ - [EventOrderCreated](#provenance-exchange-v1-EventOrderCreated)
+ - [EventOrderExternalIDUpdated](#provenance-exchange-v1-EventOrderExternalIDUpdated)
+ - [EventOrderFilled](#provenance-exchange-v1-EventOrderFilled)
+ - [EventOrderPartiallyFilled](#provenance-exchange-v1-EventOrderPartiallyFilled)
+ - [EventParamsUpdated](#provenance-exchange-v1-EventParamsUpdated)
+ - [EventPaymentAccepted](#provenance-exchange-v1-EventPaymentAccepted)
+ - [EventPaymentCancelled](#provenance-exchange-v1-EventPaymentCancelled)
+ - [EventPaymentCreated](#provenance-exchange-v1-EventPaymentCreated)
+ - [EventPaymentRejected](#provenance-exchange-v1-EventPaymentRejected)
+ - [EventPaymentUpdated](#provenance-exchange-v1-EventPaymentUpdated)
-- [provenance/hold/v1/events.proto](#provenance/hold/v1/events.proto)
- - [EventHoldAdded](#provenance.hold.v1.EventHoldAdded)
- - [EventHoldReleased](#provenance.hold.v1.EventHoldReleased)
+- [provenance/exchange/v1/market.proto](#provenance_exchange_v1_market-proto)
+ - [AccessGrant](#provenance-exchange-v1-AccessGrant)
+ - [FeeRatio](#provenance-exchange-v1-FeeRatio)
+ - [Market](#provenance-exchange-v1-Market)
+ - [MarketAccount](#provenance-exchange-v1-MarketAccount)
+ - [MarketBrief](#provenance-exchange-v1-MarketBrief)
+ - [MarketDetails](#provenance-exchange-v1-MarketDetails)
-- [provenance/hold/v1/hold.proto](#provenance/hold/v1/hold.proto)
- - [AccountHold](#provenance.hold.v1.AccountHold)
+ - [Permission](#provenance-exchange-v1-Permission)
-- [provenance/hold/v1/genesis.proto](#provenance/hold/v1/genesis.proto)
- - [GenesisState](#provenance.hold.v1.GenesisState)
+- [provenance/exchange/v1/payments.proto](#provenance_exchange_v1_payments-proto)
+ - [Payment](#provenance-exchange-v1-Payment)
-- [provenance/hold/v1/query.proto](#provenance/hold/v1/query.proto)
- - [GetAllHoldsRequest](#provenance.hold.v1.GetAllHoldsRequest)
- - [GetAllHoldsResponse](#provenance.hold.v1.GetAllHoldsResponse)
- - [GetHoldsRequest](#provenance.hold.v1.GetHoldsRequest)
- - [GetHoldsResponse](#provenance.hold.v1.GetHoldsResponse)
+- [provenance/exchange/v1/commitments.proto](#provenance_exchange_v1_commitments-proto)
+ - [AccountAmount](#provenance-exchange-v1-AccountAmount)
+ - [Commitment](#provenance-exchange-v1-Commitment)
+ - [MarketAmount](#provenance-exchange-v1-MarketAmount)
+ - [NetAssetPrice](#provenance-exchange-v1-NetAssetPrice)
- - [Query](#provenance.hold.v1.Query)
+- [provenance/exchange/v1/query.proto](#provenance_exchange_v1_query-proto)
+ - [QueryCommitmentSettlementFeeCalcRequest](#provenance-exchange-v1-QueryCommitmentSettlementFeeCalcRequest)
+ - [QueryCommitmentSettlementFeeCalcResponse](#provenance-exchange-v1-QueryCommitmentSettlementFeeCalcResponse)
+ - [QueryGetAccountCommitmentsRequest](#provenance-exchange-v1-QueryGetAccountCommitmentsRequest)
+ - [QueryGetAccountCommitmentsResponse](#provenance-exchange-v1-QueryGetAccountCommitmentsResponse)
+ - [QueryGetAllCommitmentsRequest](#provenance-exchange-v1-QueryGetAllCommitmentsRequest)
+ - [QueryGetAllCommitmentsResponse](#provenance-exchange-v1-QueryGetAllCommitmentsResponse)
+ - [QueryGetAllMarketsRequest](#provenance-exchange-v1-QueryGetAllMarketsRequest)
+ - [QueryGetAllMarketsResponse](#provenance-exchange-v1-QueryGetAllMarketsResponse)
+ - [QueryGetAllOrdersRequest](#provenance-exchange-v1-QueryGetAllOrdersRequest)
+ - [QueryGetAllOrdersResponse](#provenance-exchange-v1-QueryGetAllOrdersResponse)
+ - [QueryGetAllPaymentsRequest](#provenance-exchange-v1-QueryGetAllPaymentsRequest)
+ - [QueryGetAllPaymentsResponse](#provenance-exchange-v1-QueryGetAllPaymentsResponse)
+ - [QueryGetAssetOrdersRequest](#provenance-exchange-v1-QueryGetAssetOrdersRequest)
+ - [QueryGetAssetOrdersResponse](#provenance-exchange-v1-QueryGetAssetOrdersResponse)
+ - [QueryGetCommitmentRequest](#provenance-exchange-v1-QueryGetCommitmentRequest)
+ - [QueryGetCommitmentResponse](#provenance-exchange-v1-QueryGetCommitmentResponse)
+ - [QueryGetMarketCommitmentsRequest](#provenance-exchange-v1-QueryGetMarketCommitmentsRequest)
+ - [QueryGetMarketCommitmentsResponse](#provenance-exchange-v1-QueryGetMarketCommitmentsResponse)
+ - [QueryGetMarketOrdersRequest](#provenance-exchange-v1-QueryGetMarketOrdersRequest)
+ - [QueryGetMarketOrdersResponse](#provenance-exchange-v1-QueryGetMarketOrdersResponse)
+ - [QueryGetMarketRequest](#provenance-exchange-v1-QueryGetMarketRequest)
+ - [QueryGetMarketResponse](#provenance-exchange-v1-QueryGetMarketResponse)
+ - [QueryGetOrderByExternalIDRequest](#provenance-exchange-v1-QueryGetOrderByExternalIDRequest)
+ - [QueryGetOrderByExternalIDResponse](#provenance-exchange-v1-QueryGetOrderByExternalIDResponse)
+ - [QueryGetOrderRequest](#provenance-exchange-v1-QueryGetOrderRequest)
+ - [QueryGetOrderResponse](#provenance-exchange-v1-QueryGetOrderResponse)
+ - [QueryGetOwnerOrdersRequest](#provenance-exchange-v1-QueryGetOwnerOrdersRequest)
+ - [QueryGetOwnerOrdersResponse](#provenance-exchange-v1-QueryGetOwnerOrdersResponse)
+ - [QueryGetPaymentRequest](#provenance-exchange-v1-QueryGetPaymentRequest)
+ - [QueryGetPaymentResponse](#provenance-exchange-v1-QueryGetPaymentResponse)
+ - [QueryGetPaymentsWithSourceRequest](#provenance-exchange-v1-QueryGetPaymentsWithSourceRequest)
+ - [QueryGetPaymentsWithSourceResponse](#provenance-exchange-v1-QueryGetPaymentsWithSourceResponse)
+ - [QueryGetPaymentsWithTargetRequest](#provenance-exchange-v1-QueryGetPaymentsWithTargetRequest)
+ - [QueryGetPaymentsWithTargetResponse](#provenance-exchange-v1-QueryGetPaymentsWithTargetResponse)
+ - [QueryOrderFeeCalcRequest](#provenance-exchange-v1-QueryOrderFeeCalcRequest)
+ - [QueryOrderFeeCalcResponse](#provenance-exchange-v1-QueryOrderFeeCalcResponse)
+ - [QueryParamsRequest](#provenance-exchange-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-exchange-v1-QueryParamsResponse)
+ - [QueryPaymentFeeCalcRequest](#provenance-exchange-v1-QueryPaymentFeeCalcRequest)
+ - [QueryPaymentFeeCalcResponse](#provenance-exchange-v1-QueryPaymentFeeCalcResponse)
+ - [QueryValidateCreateMarketRequest](#provenance-exchange-v1-QueryValidateCreateMarketRequest)
+ - [QueryValidateCreateMarketResponse](#provenance-exchange-v1-QueryValidateCreateMarketResponse)
+ - [QueryValidateManageFeesRequest](#provenance-exchange-v1-QueryValidateManageFeesRequest)
+ - [QueryValidateManageFeesResponse](#provenance-exchange-v1-QueryValidateManageFeesResponse)
+ - [QueryValidateMarketRequest](#provenance-exchange-v1-QueryValidateMarketRequest)
+ - [QueryValidateMarketResponse](#provenance-exchange-v1-QueryValidateMarketResponse)
-- [provenance/ibchooks/v1/params.proto](#provenance/ibchooks/v1/params.proto)
- - [Params](#provenance.ibchooks.v1.Params)
+ - [Query](#provenance-exchange-v1-Query)
-- [provenance/ibchooks/v1/genesis.proto](#provenance/ibchooks/v1/genesis.proto)
- - [GenesisState](#provenance.ibchooks.v1.GenesisState)
+- [provenance/exchange/v1/genesis.proto](#provenance_exchange_v1_genesis-proto)
+ - [GenesisState](#provenance-exchange-v1-GenesisState)
-- [provenance/ibchooks/v1/tx.proto](#provenance/ibchooks/v1/tx.proto)
- - [MsgEmitIBCAck](#provenance.ibchooks.v1.MsgEmitIBCAck)
- - [MsgEmitIBCAckResponse](#provenance.ibchooks.v1.MsgEmitIBCAckResponse)
+- [provenance/exchange/v1/orders.proto](#provenance_exchange_v1_orders-proto)
+ - [AskOrder](#provenance-exchange-v1-AskOrder)
+ - [BidOrder](#provenance-exchange-v1-BidOrder)
+ - [Order](#provenance-exchange-v1-Order)
- - [Msg](#provenance.ibchooks.v1.Msg)
+- [provenance/exchange/v1/params.proto](#provenance_exchange_v1_params-proto)
+ - [DenomSplit](#provenance-exchange-v1-DenomSplit)
+ - [Params](#provenance-exchange-v1-Params)
-- [provenance/ibcratelimit/v1/event.proto](#provenance/ibcratelimit/v1/event.proto)
- - [EventAckRevertFailure](#provenance.ibcratelimit.v1.EventAckRevertFailure)
- - [EventParamsUpdated](#provenance.ibcratelimit.v1.EventParamsUpdated)
- - [EventTimeoutRevertFailure](#provenance.ibcratelimit.v1.EventTimeoutRevertFailure)
+- [provenance/trigger/v1/tx.proto](#provenance_trigger_v1_tx-proto)
+ - [MsgCreateTriggerRequest](#provenance-trigger-v1-MsgCreateTriggerRequest)
+ - [MsgCreateTriggerResponse](#provenance-trigger-v1-MsgCreateTriggerResponse)
+ - [MsgDestroyTriggerRequest](#provenance-trigger-v1-MsgDestroyTriggerRequest)
+ - [MsgDestroyTriggerResponse](#provenance-trigger-v1-MsgDestroyTriggerResponse)
-- [provenance/ibcratelimit/v1/params.proto](#provenance/ibcratelimit/v1/params.proto)
- - [Params](#provenance.ibcratelimit.v1.Params)
+ - [Msg](#provenance-trigger-v1-Msg)
-- [provenance/ibcratelimit/v1/genesis.proto](#provenance/ibcratelimit/v1/genesis.proto)
- - [GenesisState](#provenance.ibcratelimit.v1.GenesisState)
+- [provenance/trigger/v1/query.proto](#provenance_trigger_v1_query-proto)
+ - [QueryTriggerByIDRequest](#provenance-trigger-v1-QueryTriggerByIDRequest)
+ - [QueryTriggerByIDResponse](#provenance-trigger-v1-QueryTriggerByIDResponse)
+ - [QueryTriggersRequest](#provenance-trigger-v1-QueryTriggersRequest)
+ - [QueryTriggersResponse](#provenance-trigger-v1-QueryTriggersResponse)
-- [provenance/ibcratelimit/v1/query.proto](#provenance/ibcratelimit/v1/query.proto)
- - [ParamsRequest](#provenance.ibcratelimit.v1.ParamsRequest)
- - [ParamsResponse](#provenance.ibcratelimit.v1.ParamsResponse)
+ - [Query](#provenance-trigger-v1-Query)
- - [Query](#provenance.ibcratelimit.v1.Query)
+- [provenance/trigger/v1/event.proto](#provenance_trigger_v1_event-proto)
+ - [EventTriggerCreated](#provenance-trigger-v1-EventTriggerCreated)
+ - [EventTriggerDestroyed](#provenance-trigger-v1-EventTriggerDestroyed)
+ - [EventTriggerDetected](#provenance-trigger-v1-EventTriggerDetected)
+ - [EventTriggerExecuted](#provenance-trigger-v1-EventTriggerExecuted)
-- [provenance/ibcratelimit/v1/tx.proto](#provenance/ibcratelimit/v1/tx.proto)
- - [MsgGovUpdateParamsRequest](#provenance.ibcratelimit.v1.MsgGovUpdateParamsRequest)
- - [MsgGovUpdateParamsResponse](#provenance.ibcratelimit.v1.MsgGovUpdateParamsResponse)
+- [provenance/trigger/v1/genesis.proto](#provenance_trigger_v1_genesis-proto)
+ - [GasLimit](#provenance-trigger-v1-GasLimit)
+ - [GenesisState](#provenance-trigger-v1-GenesisState)
- - [Msg](#provenance.ibcratelimit.v1.Msg)
+- [provenance/trigger/v1/trigger.proto](#provenance_trigger_v1_trigger-proto)
+ - [Attribute](#provenance-trigger-v1-Attribute)
+ - [BlockHeightEvent](#provenance-trigger-v1-BlockHeightEvent)
+ - [BlockTimeEvent](#provenance-trigger-v1-BlockTimeEvent)
+ - [QueuedTrigger](#provenance-trigger-v1-QueuedTrigger)
+ - [TransactionEvent](#provenance-trigger-v1-TransactionEvent)
+ - [Trigger](#provenance-trigger-v1-Trigger)
-- [provenance/marker/v1/accessgrant.proto](#provenance/marker/v1/accessgrant.proto)
- - [AccessGrant](#provenance.marker.v1.AccessGrant)
+- [provenance/attribute/v1/tx.proto](#provenance_attribute_v1_tx-proto)
+ - [MsgAddAttributeRequest](#provenance-attribute-v1-MsgAddAttributeRequest)
+ - [MsgAddAttributeResponse](#provenance-attribute-v1-MsgAddAttributeResponse)
+ - [MsgDeleteAttributeRequest](#provenance-attribute-v1-MsgDeleteAttributeRequest)
+ - [MsgDeleteAttributeResponse](#provenance-attribute-v1-MsgDeleteAttributeResponse)
+ - [MsgDeleteDistinctAttributeRequest](#provenance-attribute-v1-MsgDeleteDistinctAttributeRequest)
+ - [MsgDeleteDistinctAttributeResponse](#provenance-attribute-v1-MsgDeleteDistinctAttributeResponse)
+ - [MsgSetAccountDataRequest](#provenance-attribute-v1-MsgSetAccountDataRequest)
+ - [MsgSetAccountDataResponse](#provenance-attribute-v1-MsgSetAccountDataResponse)
+ - [MsgUpdateAttributeExpirationRequest](#provenance-attribute-v1-MsgUpdateAttributeExpirationRequest)
+ - [MsgUpdateAttributeExpirationResponse](#provenance-attribute-v1-MsgUpdateAttributeExpirationResponse)
+ - [MsgUpdateAttributeRequest](#provenance-attribute-v1-MsgUpdateAttributeRequest)
+ - [MsgUpdateAttributeResponse](#provenance-attribute-v1-MsgUpdateAttributeResponse)
+ - [MsgUpdateParamsRequest](#provenance-attribute-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-attribute-v1-MsgUpdateParamsResponse)
- - [Access](#provenance.marker.v1.Access)
+ - [Msg](#provenance-attribute-v1-Msg)
-- [provenance/marker/v1/authz.proto](#provenance/marker/v1/authz.proto)
- - [MarkerTransferAuthorization](#provenance.marker.v1.MarkerTransferAuthorization)
+- [provenance/attribute/v1/attribute.proto](#provenance_attribute_v1_attribute-proto)
+ - [Attribute](#provenance-attribute-v1-Attribute)
+ - [EventAccountDataUpdated](#provenance-attribute-v1-EventAccountDataUpdated)
+ - [EventAttributeAdd](#provenance-attribute-v1-EventAttributeAdd)
+ - [EventAttributeDelete](#provenance-attribute-v1-EventAttributeDelete)
+ - [EventAttributeDistinctDelete](#provenance-attribute-v1-EventAttributeDistinctDelete)
+ - [EventAttributeExpirationUpdate](#provenance-attribute-v1-EventAttributeExpirationUpdate)
+ - [EventAttributeExpired](#provenance-attribute-v1-EventAttributeExpired)
+ - [EventAttributeParamsUpdated](#provenance-attribute-v1-EventAttributeParamsUpdated)
+ - [EventAttributeUpdate](#provenance-attribute-v1-EventAttributeUpdate)
+ - [Params](#provenance-attribute-v1-Params)
-- [provenance/marker/v1/marker.proto](#provenance/marker/v1/marker.proto)
- - [EventDenomUnit](#provenance.marker.v1.EventDenomUnit)
- - [EventMarkerAccess](#provenance.marker.v1.EventMarkerAccess)
- - [EventMarkerActivate](#provenance.marker.v1.EventMarkerActivate)
- - [EventMarkerAdd](#provenance.marker.v1.EventMarkerAdd)
- - [EventMarkerAddAccess](#provenance.marker.v1.EventMarkerAddAccess)
- - [EventMarkerBurn](#provenance.marker.v1.EventMarkerBurn)
- - [EventMarkerCancel](#provenance.marker.v1.EventMarkerCancel)
- - [EventMarkerDelete](#provenance.marker.v1.EventMarkerDelete)
- - [EventMarkerDeleteAccess](#provenance.marker.v1.EventMarkerDeleteAccess)
- - [EventMarkerFinalize](#provenance.marker.v1.EventMarkerFinalize)
- - [EventMarkerMint](#provenance.marker.v1.EventMarkerMint)
- - [EventMarkerSetDenomMetadata](#provenance.marker.v1.EventMarkerSetDenomMetadata)
- - [EventMarkerTransfer](#provenance.marker.v1.EventMarkerTransfer)
- - [EventMarkerWithdraw](#provenance.marker.v1.EventMarkerWithdraw)
- - [EventSetNetAssetValue](#provenance.marker.v1.EventSetNetAssetValue)
- - [MarkerAccount](#provenance.marker.v1.MarkerAccount)
- - [NetAssetValue](#provenance.marker.v1.NetAssetValue)
- - [Params](#provenance.marker.v1.Params)
+ - [AttributeType](#provenance-attribute-v1-AttributeType)
- - [MarkerStatus](#provenance.marker.v1.MarkerStatus)
- - [MarkerType](#provenance.marker.v1.MarkerType)
+- [provenance/attribute/v1/query.proto](#provenance_attribute_v1_query-proto)
+ - [QueryAccountDataRequest](#provenance-attribute-v1-QueryAccountDataRequest)
+ - [QueryAccountDataResponse](#provenance-attribute-v1-QueryAccountDataResponse)
+ - [QueryAttributeAccountsRequest](#provenance-attribute-v1-QueryAttributeAccountsRequest)
+ - [QueryAttributeAccountsResponse](#provenance-attribute-v1-QueryAttributeAccountsResponse)
+ - [QueryAttributeRequest](#provenance-attribute-v1-QueryAttributeRequest)
+ - [QueryAttributeResponse](#provenance-attribute-v1-QueryAttributeResponse)
+ - [QueryAttributesRequest](#provenance-attribute-v1-QueryAttributesRequest)
+ - [QueryAttributesResponse](#provenance-attribute-v1-QueryAttributesResponse)
+ - [QueryParamsRequest](#provenance-attribute-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-attribute-v1-QueryParamsResponse)
+ - [QueryScanRequest](#provenance-attribute-v1-QueryScanRequest)
+ - [QueryScanResponse](#provenance-attribute-v1-QueryScanResponse)
-- [provenance/marker/v1/genesis.proto](#provenance/marker/v1/genesis.proto)
- - [DenySendAddress](#provenance.marker.v1.DenySendAddress)
- - [GenesisState](#provenance.marker.v1.GenesisState)
- - [MarkerNetAssetValues](#provenance.marker.v1.MarkerNetAssetValues)
+ - [Query](#provenance-attribute-v1-Query)
-- [provenance/marker/v1/proposals.proto](#provenance/marker/v1/proposals.proto)
- - [AddMarkerProposal](#provenance.marker.v1.AddMarkerProposal)
- - [ChangeStatusProposal](#provenance.marker.v1.ChangeStatusProposal)
- - [RemoveAdministratorProposal](#provenance.marker.v1.RemoveAdministratorProposal)
- - [SetAdministratorProposal](#provenance.marker.v1.SetAdministratorProposal)
- - [SetDenomMetadataProposal](#provenance.marker.v1.SetDenomMetadataProposal)
- - [SupplyDecreaseProposal](#provenance.marker.v1.SupplyDecreaseProposal)
- - [SupplyIncreaseProposal](#provenance.marker.v1.SupplyIncreaseProposal)
- - [WithdrawEscrowProposal](#provenance.marker.v1.WithdrawEscrowProposal)
+- [provenance/attribute/v1/genesis.proto](#provenance_attribute_v1_genesis-proto)
+ - [GenesisState](#provenance-attribute-v1-GenesisState)
-- [provenance/marker/v1/query.proto](#provenance/marker/v1/query.proto)
- - [Balance](#provenance.marker.v1.Balance)
- - [QueryAccessRequest](#provenance.marker.v1.QueryAccessRequest)
- - [QueryAccessResponse](#provenance.marker.v1.QueryAccessResponse)
- - [QueryAccountDataRequest](#provenance.marker.v1.QueryAccountDataRequest)
- - [QueryAccountDataResponse](#provenance.marker.v1.QueryAccountDataResponse)
- - [QueryAllMarkersRequest](#provenance.marker.v1.QueryAllMarkersRequest)
- - [QueryAllMarkersResponse](#provenance.marker.v1.QueryAllMarkersResponse)
- - [QueryDenomMetadataRequest](#provenance.marker.v1.QueryDenomMetadataRequest)
- - [QueryDenomMetadataResponse](#provenance.marker.v1.QueryDenomMetadataResponse)
- - [QueryEscrowRequest](#provenance.marker.v1.QueryEscrowRequest)
- - [QueryEscrowResponse](#provenance.marker.v1.QueryEscrowResponse)
- - [QueryHoldingRequest](#provenance.marker.v1.QueryHoldingRequest)
- - [QueryHoldingResponse](#provenance.marker.v1.QueryHoldingResponse)
- - [QueryMarkerRequest](#provenance.marker.v1.QueryMarkerRequest)
- - [QueryMarkerResponse](#provenance.marker.v1.QueryMarkerResponse)
- - [QueryNetAssetValuesRequest](#provenance.marker.v1.QueryNetAssetValuesRequest)
- - [QueryNetAssetValuesResponse](#provenance.marker.v1.QueryNetAssetValuesResponse)
- - [QueryParamsRequest](#provenance.marker.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.marker.v1.QueryParamsResponse)
- - [QuerySupplyRequest](#provenance.marker.v1.QuerySupplyRequest)
- - [QuerySupplyResponse](#provenance.marker.v1.QuerySupplyResponse)
+- [provenance/msgfees/v1/tx.proto](#provenance_msgfees_v1_tx-proto)
+ - [MsgAddMsgFeeProposalRequest](#provenance-msgfees-v1-MsgAddMsgFeeProposalRequest)
+ - [MsgAddMsgFeeProposalResponse](#provenance-msgfees-v1-MsgAddMsgFeeProposalResponse)
+ - [MsgAssessCustomMsgFeeRequest](#provenance-msgfees-v1-MsgAssessCustomMsgFeeRequest)
+ - [MsgAssessCustomMsgFeeResponse](#provenance-msgfees-v1-MsgAssessCustomMsgFeeResponse)
+ - [MsgRemoveMsgFeeProposalRequest](#provenance-msgfees-v1-MsgRemoveMsgFeeProposalRequest)
+ - [MsgRemoveMsgFeeProposalResponse](#provenance-msgfees-v1-MsgRemoveMsgFeeProposalResponse)
+ - [MsgUpdateConversionFeeDenomProposalRequest](#provenance-msgfees-v1-MsgUpdateConversionFeeDenomProposalRequest)
+ - [MsgUpdateConversionFeeDenomProposalResponse](#provenance-msgfees-v1-MsgUpdateConversionFeeDenomProposalResponse)
+ - [MsgUpdateMsgFeeProposalRequest](#provenance-msgfees-v1-MsgUpdateMsgFeeProposalRequest)
+ - [MsgUpdateMsgFeeProposalResponse](#provenance-msgfees-v1-MsgUpdateMsgFeeProposalResponse)
+ - [MsgUpdateNhashPerUsdMilProposalRequest](#provenance-msgfees-v1-MsgUpdateNhashPerUsdMilProposalRequest)
+ - [MsgUpdateNhashPerUsdMilProposalResponse](#provenance-msgfees-v1-MsgUpdateNhashPerUsdMilProposalResponse)
- - [Query](#provenance.marker.v1.Query)
+ - [Msg](#provenance-msgfees-v1-Msg)
-- [provenance/marker/v1/si.proto](#provenance/marker/v1/si.proto)
- - [SIPrefix](#provenance.marker.v1.SIPrefix)
+- [provenance/msgfees/v1/query.proto](#provenance_msgfees_v1_query-proto)
+ - [CalculateTxFeesRequest](#provenance-msgfees-v1-CalculateTxFeesRequest)
+ - [CalculateTxFeesResponse](#provenance-msgfees-v1-CalculateTxFeesResponse)
+ - [QueryAllMsgFeesRequest](#provenance-msgfees-v1-QueryAllMsgFeesRequest)
+ - [QueryAllMsgFeesResponse](#provenance-msgfees-v1-QueryAllMsgFeesResponse)
+ - [QueryParamsRequest](#provenance-msgfees-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-msgfees-v1-QueryParamsResponse)
-- [provenance/marker/v1/tx.proto](#provenance/marker/v1/tx.proto)
- - [MsgActivateRequest](#provenance.marker.v1.MsgActivateRequest)
- - [MsgActivateResponse](#provenance.marker.v1.MsgActivateResponse)
- - [MsgAddAccessRequest](#provenance.marker.v1.MsgAddAccessRequest)
- - [MsgAddAccessResponse](#provenance.marker.v1.MsgAddAccessResponse)
- - [MsgAddFinalizeActivateMarkerRequest](#provenance.marker.v1.MsgAddFinalizeActivateMarkerRequest)
- - [MsgAddFinalizeActivateMarkerResponse](#provenance.marker.v1.MsgAddFinalizeActivateMarkerResponse)
- - [MsgAddMarkerRequest](#provenance.marker.v1.MsgAddMarkerRequest)
- - [MsgAddMarkerResponse](#provenance.marker.v1.MsgAddMarkerResponse)
- - [MsgAddNetAssetValuesRequest](#provenance.marker.v1.MsgAddNetAssetValuesRequest)
- - [MsgAddNetAssetValuesResponse](#provenance.marker.v1.MsgAddNetAssetValuesResponse)
- - [MsgBurnRequest](#provenance.marker.v1.MsgBurnRequest)
- - [MsgBurnResponse](#provenance.marker.v1.MsgBurnResponse)
- - [MsgCancelRequest](#provenance.marker.v1.MsgCancelRequest)
- - [MsgCancelResponse](#provenance.marker.v1.MsgCancelResponse)
- - [MsgDeleteAccessRequest](#provenance.marker.v1.MsgDeleteAccessRequest)
- - [MsgDeleteAccessResponse](#provenance.marker.v1.MsgDeleteAccessResponse)
- - [MsgDeleteRequest](#provenance.marker.v1.MsgDeleteRequest)
- - [MsgDeleteResponse](#provenance.marker.v1.MsgDeleteResponse)
- - [MsgFinalizeRequest](#provenance.marker.v1.MsgFinalizeRequest)
- - [MsgFinalizeResponse](#provenance.marker.v1.MsgFinalizeResponse)
- - [MsgGrantAllowanceRequest](#provenance.marker.v1.MsgGrantAllowanceRequest)
- - [MsgGrantAllowanceResponse](#provenance.marker.v1.MsgGrantAllowanceResponse)
- - [MsgIbcTransferRequest](#provenance.marker.v1.MsgIbcTransferRequest)
- - [MsgIbcTransferResponse](#provenance.marker.v1.MsgIbcTransferResponse)
- - [MsgMintRequest](#provenance.marker.v1.MsgMintRequest)
- - [MsgMintResponse](#provenance.marker.v1.MsgMintResponse)
- - [MsgSetAccountDataRequest](#provenance.marker.v1.MsgSetAccountDataRequest)
- - [MsgSetAccountDataResponse](#provenance.marker.v1.MsgSetAccountDataResponse)
- - [MsgSetDenomMetadataRequest](#provenance.marker.v1.MsgSetDenomMetadataRequest)
- - [MsgSetDenomMetadataResponse](#provenance.marker.v1.MsgSetDenomMetadataResponse)
- - [MsgSupplyIncreaseProposalRequest](#provenance.marker.v1.MsgSupplyIncreaseProposalRequest)
- - [MsgSupplyIncreaseProposalResponse](#provenance.marker.v1.MsgSupplyIncreaseProposalResponse)
- - [MsgTransferRequest](#provenance.marker.v1.MsgTransferRequest)
- - [MsgTransferResponse](#provenance.marker.v1.MsgTransferResponse)
- - [MsgUpdateForcedTransferRequest](#provenance.marker.v1.MsgUpdateForcedTransferRequest)
- - [MsgUpdateForcedTransferResponse](#provenance.marker.v1.MsgUpdateForcedTransferResponse)
- - [MsgUpdateRequiredAttributesRequest](#provenance.marker.v1.MsgUpdateRequiredAttributesRequest)
- - [MsgUpdateRequiredAttributesResponse](#provenance.marker.v1.MsgUpdateRequiredAttributesResponse)
- - [MsgUpdateSendDenyListRequest](#provenance.marker.v1.MsgUpdateSendDenyListRequest)
- - [MsgUpdateSendDenyListResponse](#provenance.marker.v1.MsgUpdateSendDenyListResponse)
- - [MsgWithdrawRequest](#provenance.marker.v1.MsgWithdrawRequest)
- - [MsgWithdrawResponse](#provenance.marker.v1.MsgWithdrawResponse)
+ - [Query](#provenance-msgfees-v1-Query)
- - [Msg](#provenance.marker.v1.Msg)
+- [provenance/msgfees/v1/genesis.proto](#provenance_msgfees_v1_genesis-proto)
+ - [GenesisState](#provenance-msgfees-v1-GenesisState)
-- [provenance/metadata/v1/events.proto](#provenance/metadata/v1/events.proto)
- - [EventContractSpecificationCreated](#provenance.metadata.v1.EventContractSpecificationCreated)
- - [EventContractSpecificationDeleted](#provenance.metadata.v1.EventContractSpecificationDeleted)
- - [EventContractSpecificationUpdated](#provenance.metadata.v1.EventContractSpecificationUpdated)
- - [EventOSLocatorCreated](#provenance.metadata.v1.EventOSLocatorCreated)
- - [EventOSLocatorDeleted](#provenance.metadata.v1.EventOSLocatorDeleted)
- - [EventOSLocatorUpdated](#provenance.metadata.v1.EventOSLocatorUpdated)
- - [EventRecordCreated](#provenance.metadata.v1.EventRecordCreated)
- - [EventRecordDeleted](#provenance.metadata.v1.EventRecordDeleted)
- - [EventRecordSpecificationCreated](#provenance.metadata.v1.EventRecordSpecificationCreated)
- - [EventRecordSpecificationDeleted](#provenance.metadata.v1.EventRecordSpecificationDeleted)
- - [EventRecordSpecificationUpdated](#provenance.metadata.v1.EventRecordSpecificationUpdated)
- - [EventRecordUpdated](#provenance.metadata.v1.EventRecordUpdated)
- - [EventScopeCreated](#provenance.metadata.v1.EventScopeCreated)
- - [EventScopeDeleted](#provenance.metadata.v1.EventScopeDeleted)
- - [EventScopeSpecificationCreated](#provenance.metadata.v1.EventScopeSpecificationCreated)
- - [EventScopeSpecificationDeleted](#provenance.metadata.v1.EventScopeSpecificationDeleted)
- - [EventScopeSpecificationUpdated](#provenance.metadata.v1.EventScopeSpecificationUpdated)
- - [EventScopeUpdated](#provenance.metadata.v1.EventScopeUpdated)
- - [EventSessionCreated](#provenance.metadata.v1.EventSessionCreated)
- - [EventSessionDeleted](#provenance.metadata.v1.EventSessionDeleted)
- - [EventSessionUpdated](#provenance.metadata.v1.EventSessionUpdated)
- - [EventSetNetAssetValue](#provenance.metadata.v1.EventSetNetAssetValue)
- - [EventTxCompleted](#provenance.metadata.v1.EventTxCompleted)
+- [provenance/msgfees/v1/msgfees.proto](#provenance_msgfees_v1_msgfees-proto)
+ - [EventMsgFee](#provenance-msgfees-v1-EventMsgFee)
+ - [EventMsgFees](#provenance-msgfees-v1-EventMsgFees)
+ - [MsgFee](#provenance-msgfees-v1-MsgFee)
+ - [Params](#provenance-msgfees-v1-Params)
-- [provenance/metadata/v1/metadata.proto](#provenance/metadata/v1/metadata.proto)
- - [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo)
- - [Params](#provenance.metadata.v1.Params)
- - [RecordIdInfo](#provenance.metadata.v1.RecordIdInfo)
- - [RecordSpecIdInfo](#provenance.metadata.v1.RecordSpecIdInfo)
- - [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo)
- - [ScopeSpecIdInfo](#provenance.metadata.v1.ScopeSpecIdInfo)
- - [SessionIdInfo](#provenance.metadata.v1.SessionIdInfo)
+- [provenance/msgfees/v1/proposals.proto](#provenance_msgfees_v1_proposals-proto)
+ - [AddMsgFeeProposal](#provenance-msgfees-v1-AddMsgFeeProposal)
+ - [RemoveMsgFeeProposal](#provenance-msgfees-v1-RemoveMsgFeeProposal)
+ - [UpdateConversionFeeDenomProposal](#provenance-msgfees-v1-UpdateConversionFeeDenomProposal)
+ - [UpdateMsgFeeProposal](#provenance-msgfees-v1-UpdateMsgFeeProposal)
+ - [UpdateNhashPerUsdMilProposal](#provenance-msgfees-v1-UpdateNhashPerUsdMilProposal)
-- [provenance/metadata/v1/specification.proto](#provenance/metadata/v1/specification.proto)
- - [ContractSpecification](#provenance.metadata.v1.ContractSpecification)
- - [Description](#provenance.metadata.v1.Description)
- - [InputSpecification](#provenance.metadata.v1.InputSpecification)
- - [RecordSpecification](#provenance.metadata.v1.RecordSpecification)
- - [ScopeSpecification](#provenance.metadata.v1.ScopeSpecification)
+- [provenance/oracle/v1/tx.proto](#provenance_oracle_v1_tx-proto)
+ - [MsgSendQueryOracleRequest](#provenance-oracle-v1-MsgSendQueryOracleRequest)
+ - [MsgSendQueryOracleResponse](#provenance-oracle-v1-MsgSendQueryOracleResponse)
+ - [MsgUpdateOracleRequest](#provenance-oracle-v1-MsgUpdateOracleRequest)
+ - [MsgUpdateOracleResponse](#provenance-oracle-v1-MsgUpdateOracleResponse)
- - [DefinitionType](#provenance.metadata.v1.DefinitionType)
- - [PartyType](#provenance.metadata.v1.PartyType)
+ - [Msg](#provenance-oracle-v1-Msg)
-- [provenance/metadata/v1/scope.proto](#provenance/metadata/v1/scope.proto)
- - [AuditFields](#provenance.metadata.v1.AuditFields)
- - [NetAssetValue](#provenance.metadata.v1.NetAssetValue)
- - [Party](#provenance.metadata.v1.Party)
- - [Process](#provenance.metadata.v1.Process)
- - [Record](#provenance.metadata.v1.Record)
- - [RecordInput](#provenance.metadata.v1.RecordInput)
- - [RecordOutput](#provenance.metadata.v1.RecordOutput)
- - [Scope](#provenance.metadata.v1.Scope)
- - [Session](#provenance.metadata.v1.Session)
+- [provenance/oracle/v1/query.proto](#provenance_oracle_v1_query-proto)
+ - [QueryOracleAddressRequest](#provenance-oracle-v1-QueryOracleAddressRequest)
+ - [QueryOracleAddressResponse](#provenance-oracle-v1-QueryOracleAddressResponse)
+ - [QueryOracleRequest](#provenance-oracle-v1-QueryOracleRequest)
+ - [QueryOracleResponse](#provenance-oracle-v1-QueryOracleResponse)
- - [RecordInputStatus](#provenance.metadata.v1.RecordInputStatus)
- - [ResultStatus](#provenance.metadata.v1.ResultStatus)
+ - [Query](#provenance-oracle-v1-Query)
-- [provenance/metadata/v1/objectstore.proto](#provenance/metadata/v1/objectstore.proto)
- - [OSLocatorParams](#provenance.metadata.v1.OSLocatorParams)
- - [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator)
+- [provenance/oracle/v1/event.proto](#provenance_oracle_v1_event-proto)
+ - [EventOracleQueryError](#provenance-oracle-v1-EventOracleQueryError)
+ - [EventOracleQuerySuccess](#provenance-oracle-v1-EventOracleQuerySuccess)
+ - [EventOracleQueryTimeout](#provenance-oracle-v1-EventOracleQueryTimeout)
-- [provenance/metadata/v1/genesis.proto](#provenance/metadata/v1/genesis.proto)
- - [GenesisState](#provenance.metadata.v1.GenesisState)
- - [MarkerNetAssetValues](#provenance.metadata.v1.MarkerNetAssetValues)
+- [provenance/oracle/v1/genesis.proto](#provenance_oracle_v1_genesis-proto)
+ - [GenesisState](#provenance-oracle-v1-GenesisState)
-- [provenance/metadata/v1/p8e/p8e.proto](#provenance/metadata/v1/p8e/p8e.proto)
- - [Condition](#provenance.metadata.v1.p8e.Condition)
- - [ConditionSpec](#provenance.metadata.v1.p8e.ConditionSpec)
- - [Consideration](#provenance.metadata.v1.p8e.Consideration)
- - [ConsiderationSpec](#provenance.metadata.v1.p8e.ConsiderationSpec)
- - [Contract](#provenance.metadata.v1.p8e.Contract)
- - [ContractSpec](#provenance.metadata.v1.p8e.ContractSpec)
- - [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec)
- - [ExecutionResult](#provenance.metadata.v1.p8e.ExecutionResult)
- - [Fact](#provenance.metadata.v1.p8e.Fact)
- - [Location](#provenance.metadata.v1.p8e.Location)
- - [OutputSpec](#provenance.metadata.v1.p8e.OutputSpec)
- - [ProposedFact](#provenance.metadata.v1.p8e.ProposedFact)
- - [ProvenanceReference](#provenance.metadata.v1.p8e.ProvenanceReference)
- - [PublicKey](#provenance.metadata.v1.p8e.PublicKey)
- - [Recital](#provenance.metadata.v1.p8e.Recital)
- - [Recitals](#provenance.metadata.v1.p8e.Recitals)
- - [Signature](#provenance.metadata.v1.p8e.Signature)
- - [SignatureSet](#provenance.metadata.v1.p8e.SignatureSet)
- - [SigningAndEncryptionPublicKeys](#provenance.metadata.v1.p8e.SigningAndEncryptionPublicKeys)
- - [Timestamp](#provenance.metadata.v1.p8e.Timestamp)
- - [UUID](#provenance.metadata.v1.p8e.UUID)
+- [provenance/ibchooks/v1/tx.proto](#provenance_ibchooks_v1_tx-proto)
+ - [MsgEmitIBCAck](#provenance-ibchooks-v1-MsgEmitIBCAck)
+ - [MsgEmitIBCAckResponse](#provenance-ibchooks-v1-MsgEmitIBCAckResponse)
+ - [MsgUpdateParamsRequest](#provenance-ibchooks-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-ibchooks-v1-MsgUpdateParamsResponse)
- - [DefinitionSpecType](#provenance.metadata.v1.p8e.DefinitionSpecType)
- - [ExecutionResultType](#provenance.metadata.v1.p8e.ExecutionResultType)
- - [PartyType](#provenance.metadata.v1.p8e.PartyType)
- - [PublicKeyCurve](#provenance.metadata.v1.p8e.PublicKeyCurve)
- - [PublicKeyType](#provenance.metadata.v1.p8e.PublicKeyType)
+ - [Msg](#provenance-ibchooks-v1-Msg)
-- [provenance/metadata/v1/query.proto](#provenance/metadata/v1/query.proto)
- - [AccountDataRequest](#provenance.metadata.v1.AccountDataRequest)
- - [AccountDataResponse](#provenance.metadata.v1.AccountDataResponse)
- - [ContractSpecificationRequest](#provenance.metadata.v1.ContractSpecificationRequest)
- - [ContractSpecificationResponse](#provenance.metadata.v1.ContractSpecificationResponse)
- - [ContractSpecificationWrapper](#provenance.metadata.v1.ContractSpecificationWrapper)
- - [ContractSpecificationsAllRequest](#provenance.metadata.v1.ContractSpecificationsAllRequest)
- - [ContractSpecificationsAllResponse](#provenance.metadata.v1.ContractSpecificationsAllResponse)
- - [GetByAddrRequest](#provenance.metadata.v1.GetByAddrRequest)
- - [GetByAddrResponse](#provenance.metadata.v1.GetByAddrResponse)
- - [OSAllLocatorsRequest](#provenance.metadata.v1.OSAllLocatorsRequest)
- - [OSAllLocatorsResponse](#provenance.metadata.v1.OSAllLocatorsResponse)
- - [OSLocatorParamsRequest](#provenance.metadata.v1.OSLocatorParamsRequest)
- - [OSLocatorParamsResponse](#provenance.metadata.v1.OSLocatorParamsResponse)
- - [OSLocatorRequest](#provenance.metadata.v1.OSLocatorRequest)
- - [OSLocatorResponse](#provenance.metadata.v1.OSLocatorResponse)
- - [OSLocatorsByScopeRequest](#provenance.metadata.v1.OSLocatorsByScopeRequest)
- - [OSLocatorsByScopeResponse](#provenance.metadata.v1.OSLocatorsByScopeResponse)
- - [OSLocatorsByURIRequest](#provenance.metadata.v1.OSLocatorsByURIRequest)
- - [OSLocatorsByURIResponse](#provenance.metadata.v1.OSLocatorsByURIResponse)
- - [OwnershipRequest](#provenance.metadata.v1.OwnershipRequest)
- - [OwnershipResponse](#provenance.metadata.v1.OwnershipResponse)
- - [QueryParamsRequest](#provenance.metadata.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.metadata.v1.QueryParamsResponse)
- - [QueryScopeNetAssetValuesRequest](#provenance.metadata.v1.QueryScopeNetAssetValuesRequest)
- - [QueryScopeNetAssetValuesResponse](#provenance.metadata.v1.QueryScopeNetAssetValuesResponse)
- - [RecordSpecificationRequest](#provenance.metadata.v1.RecordSpecificationRequest)
- - [RecordSpecificationResponse](#provenance.metadata.v1.RecordSpecificationResponse)
- - [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper)
- - [RecordSpecificationsAllRequest](#provenance.metadata.v1.RecordSpecificationsAllRequest)
- - [RecordSpecificationsAllResponse](#provenance.metadata.v1.RecordSpecificationsAllResponse)
- - [RecordSpecificationsForContractSpecificationRequest](#provenance.metadata.v1.RecordSpecificationsForContractSpecificationRequest)
- - [RecordSpecificationsForContractSpecificationResponse](#provenance.metadata.v1.RecordSpecificationsForContractSpecificationResponse)
- - [RecordWrapper](#provenance.metadata.v1.RecordWrapper)
- - [RecordsAllRequest](#provenance.metadata.v1.RecordsAllRequest)
- - [RecordsAllResponse](#provenance.metadata.v1.RecordsAllResponse)
- - [RecordsRequest](#provenance.metadata.v1.RecordsRequest)
- - [RecordsResponse](#provenance.metadata.v1.RecordsResponse)
- - [ScopeRequest](#provenance.metadata.v1.ScopeRequest)
- - [ScopeResponse](#provenance.metadata.v1.ScopeResponse)
- - [ScopeSpecificationRequest](#provenance.metadata.v1.ScopeSpecificationRequest)
- - [ScopeSpecificationResponse](#provenance.metadata.v1.ScopeSpecificationResponse)
- - [ScopeSpecificationWrapper](#provenance.metadata.v1.ScopeSpecificationWrapper)
- - [ScopeSpecificationsAllRequest](#provenance.metadata.v1.ScopeSpecificationsAllRequest)
- - [ScopeSpecificationsAllResponse](#provenance.metadata.v1.ScopeSpecificationsAllResponse)
- - [ScopeWrapper](#provenance.metadata.v1.ScopeWrapper)
- - [ScopesAllRequest](#provenance.metadata.v1.ScopesAllRequest)
- - [ScopesAllResponse](#provenance.metadata.v1.ScopesAllResponse)
- - [SessionWrapper](#provenance.metadata.v1.SessionWrapper)
- - [SessionsAllRequest](#provenance.metadata.v1.SessionsAllRequest)
- - [SessionsAllResponse](#provenance.metadata.v1.SessionsAllResponse)
- - [SessionsRequest](#provenance.metadata.v1.SessionsRequest)
- - [SessionsResponse](#provenance.metadata.v1.SessionsResponse)
- - [ValueOwnershipRequest](#provenance.metadata.v1.ValueOwnershipRequest)
- - [ValueOwnershipResponse](#provenance.metadata.v1.ValueOwnershipResponse)
+- [provenance/ibchooks/v1/query.proto](#provenance_ibchooks_v1_query-proto)
+ - [QueryParamsRequest](#provenance-ibchooks-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-ibchooks-v1-QueryParamsResponse)
- - [Query](#provenance.metadata.v1.Query)
+ - [Query](#provenance-ibchooks-v1-Query)
-- [provenance/metadata/v1/tx.proto](#provenance/metadata/v1/tx.proto)
- - [MsgAddContractSpecToScopeSpecRequest](#provenance.metadata.v1.MsgAddContractSpecToScopeSpecRequest)
- - [MsgAddContractSpecToScopeSpecResponse](#provenance.metadata.v1.MsgAddContractSpecToScopeSpecResponse)
- - [MsgAddNetAssetValuesRequest](#provenance.metadata.v1.MsgAddNetAssetValuesRequest)
- - [MsgAddNetAssetValuesResponse](#provenance.metadata.v1.MsgAddNetAssetValuesResponse)
- - [MsgAddScopeDataAccessRequest](#provenance.metadata.v1.MsgAddScopeDataAccessRequest)
- - [MsgAddScopeDataAccessResponse](#provenance.metadata.v1.MsgAddScopeDataAccessResponse)
- - [MsgAddScopeOwnerRequest](#provenance.metadata.v1.MsgAddScopeOwnerRequest)
- - [MsgAddScopeOwnerResponse](#provenance.metadata.v1.MsgAddScopeOwnerResponse)
- - [MsgBindOSLocatorRequest](#provenance.metadata.v1.MsgBindOSLocatorRequest)
- - [MsgBindOSLocatorResponse](#provenance.metadata.v1.MsgBindOSLocatorResponse)
- - [MsgDeleteContractSpecFromScopeSpecRequest](#provenance.metadata.v1.MsgDeleteContractSpecFromScopeSpecRequest)
- - [MsgDeleteContractSpecFromScopeSpecResponse](#provenance.metadata.v1.MsgDeleteContractSpecFromScopeSpecResponse)
- - [MsgDeleteContractSpecificationRequest](#provenance.metadata.v1.MsgDeleteContractSpecificationRequest)
- - [MsgDeleteContractSpecificationResponse](#provenance.metadata.v1.MsgDeleteContractSpecificationResponse)
- - [MsgDeleteOSLocatorRequest](#provenance.metadata.v1.MsgDeleteOSLocatorRequest)
- - [MsgDeleteOSLocatorResponse](#provenance.metadata.v1.MsgDeleteOSLocatorResponse)
- - [MsgDeleteRecordRequest](#provenance.metadata.v1.MsgDeleteRecordRequest)
- - [MsgDeleteRecordResponse](#provenance.metadata.v1.MsgDeleteRecordResponse)
- - [MsgDeleteRecordSpecificationRequest](#provenance.metadata.v1.MsgDeleteRecordSpecificationRequest)
- - [MsgDeleteRecordSpecificationResponse](#provenance.metadata.v1.MsgDeleteRecordSpecificationResponse)
- - [MsgDeleteScopeDataAccessRequest](#provenance.metadata.v1.MsgDeleteScopeDataAccessRequest)
- - [MsgDeleteScopeDataAccessResponse](#provenance.metadata.v1.MsgDeleteScopeDataAccessResponse)
- - [MsgDeleteScopeOwnerRequest](#provenance.metadata.v1.MsgDeleteScopeOwnerRequest)
- - [MsgDeleteScopeOwnerResponse](#provenance.metadata.v1.MsgDeleteScopeOwnerResponse)
- - [MsgDeleteScopeRequest](#provenance.metadata.v1.MsgDeleteScopeRequest)
- - [MsgDeleteScopeResponse](#provenance.metadata.v1.MsgDeleteScopeResponse)
- - [MsgDeleteScopeSpecificationRequest](#provenance.metadata.v1.MsgDeleteScopeSpecificationRequest)
- - [MsgDeleteScopeSpecificationResponse](#provenance.metadata.v1.MsgDeleteScopeSpecificationResponse)
- - [MsgMigrateValueOwnerRequest](#provenance.metadata.v1.MsgMigrateValueOwnerRequest)
- - [MsgMigrateValueOwnerResponse](#provenance.metadata.v1.MsgMigrateValueOwnerResponse)
- - [MsgModifyOSLocatorRequest](#provenance.metadata.v1.MsgModifyOSLocatorRequest)
- - [MsgModifyOSLocatorResponse](#provenance.metadata.v1.MsgModifyOSLocatorResponse)
- - [MsgP8eMemorializeContractRequest](#provenance.metadata.v1.MsgP8eMemorializeContractRequest)
- - [MsgP8eMemorializeContractResponse](#provenance.metadata.v1.MsgP8eMemorializeContractResponse)
- - [MsgSetAccountDataRequest](#provenance.metadata.v1.MsgSetAccountDataRequest)
- - [MsgSetAccountDataResponse](#provenance.metadata.v1.MsgSetAccountDataResponse)
- - [MsgUpdateValueOwnersRequest](#provenance.metadata.v1.MsgUpdateValueOwnersRequest)
- - [MsgUpdateValueOwnersResponse](#provenance.metadata.v1.MsgUpdateValueOwnersResponse)
- - [MsgWriteContractSpecificationRequest](#provenance.metadata.v1.MsgWriteContractSpecificationRequest)
- - [MsgWriteContractSpecificationResponse](#provenance.metadata.v1.MsgWriteContractSpecificationResponse)
- - [MsgWriteP8eContractSpecRequest](#provenance.metadata.v1.MsgWriteP8eContractSpecRequest)
- - [MsgWriteP8eContractSpecResponse](#provenance.metadata.v1.MsgWriteP8eContractSpecResponse)
- - [MsgWriteRecordRequest](#provenance.metadata.v1.MsgWriteRecordRequest)
- - [MsgWriteRecordResponse](#provenance.metadata.v1.MsgWriteRecordResponse)
- - [MsgWriteRecordSpecificationRequest](#provenance.metadata.v1.MsgWriteRecordSpecificationRequest)
- - [MsgWriteRecordSpecificationResponse](#provenance.metadata.v1.MsgWriteRecordSpecificationResponse)
- - [MsgWriteScopeRequest](#provenance.metadata.v1.MsgWriteScopeRequest)
- - [MsgWriteScopeResponse](#provenance.metadata.v1.MsgWriteScopeResponse)
- - [MsgWriteScopeSpecificationRequest](#provenance.metadata.v1.MsgWriteScopeSpecificationRequest)
- - [MsgWriteScopeSpecificationResponse](#provenance.metadata.v1.MsgWriteScopeSpecificationResponse)
- - [MsgWriteSessionRequest](#provenance.metadata.v1.MsgWriteSessionRequest)
- - [MsgWriteSessionResponse](#provenance.metadata.v1.MsgWriteSessionResponse)
- - [SessionIdComponents](#provenance.metadata.v1.SessionIdComponents)
+- [provenance/ibchooks/v1/event.proto](#provenance_ibchooks_v1_event-proto)
+ - [EventIBCHooksParamsUpdated](#provenance-ibchooks-v1-EventIBCHooksParamsUpdated)
- - [Msg](#provenance.metadata.v1.Msg)
+- [provenance/ibchooks/v1/genesis.proto](#provenance_ibchooks_v1_genesis-proto)
+ - [GenesisState](#provenance-ibchooks-v1-GenesisState)
-- [provenance/msgfees/v1/msgfees.proto](#provenance/msgfees/v1/msgfees.proto)
- - [EventMsgFee](#provenance.msgfees.v1.EventMsgFee)
- - [EventMsgFees](#provenance.msgfees.v1.EventMsgFees)
- - [MsgFee](#provenance.msgfees.v1.MsgFee)
- - [Params](#provenance.msgfees.v1.Params)
+- [provenance/ibchooks/v1/params.proto](#provenance_ibchooks_v1_params-proto)
+ - [Params](#provenance-ibchooks-v1-Params)
-- [provenance/msgfees/v1/genesis.proto](#provenance/msgfees/v1/genesis.proto)
- - [GenesisState](#provenance.msgfees.v1.GenesisState)
+- [provenance/ibcratelimit/v1/tx.proto](#provenance_ibcratelimit_v1_tx-proto)
+ - [MsgGovUpdateParamsRequest](#provenance-ibcratelimit-v1-MsgGovUpdateParamsRequest)
+ - [MsgGovUpdateParamsResponse](#provenance-ibcratelimit-v1-MsgGovUpdateParamsResponse)
+ - [MsgUpdateParamsRequest](#provenance-ibcratelimit-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-ibcratelimit-v1-MsgUpdateParamsResponse)
-- [provenance/msgfees/v1/proposals.proto](#provenance/msgfees/v1/proposals.proto)
- - [AddMsgFeeProposal](#provenance.msgfees.v1.AddMsgFeeProposal)
- - [RemoveMsgFeeProposal](#provenance.msgfees.v1.RemoveMsgFeeProposal)
- - [UpdateConversionFeeDenomProposal](#provenance.msgfees.v1.UpdateConversionFeeDenomProposal)
- - [UpdateMsgFeeProposal](#provenance.msgfees.v1.UpdateMsgFeeProposal)
- - [UpdateNhashPerUsdMilProposal](#provenance.msgfees.v1.UpdateNhashPerUsdMilProposal)
+ - [Msg](#provenance-ibcratelimit-v1-Msg)
-- [provenance/msgfees/v1/query.proto](#provenance/msgfees/v1/query.proto)
- - [CalculateTxFeesRequest](#provenance.msgfees.v1.CalculateTxFeesRequest)
- - [CalculateTxFeesResponse](#provenance.msgfees.v1.CalculateTxFeesResponse)
- - [QueryAllMsgFeesRequest](#provenance.msgfees.v1.QueryAllMsgFeesRequest)
- - [QueryAllMsgFeesResponse](#provenance.msgfees.v1.QueryAllMsgFeesResponse)
- - [QueryParamsRequest](#provenance.msgfees.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.msgfees.v1.QueryParamsResponse)
+- [provenance/ibcratelimit/v1/query.proto](#provenance_ibcratelimit_v1_query-proto)
+ - [ParamsRequest](#provenance-ibcratelimit-v1-ParamsRequest)
+ - [ParamsResponse](#provenance-ibcratelimit-v1-ParamsResponse)
- - [Query](#provenance.msgfees.v1.Query)
+ - [Query](#provenance-ibcratelimit-v1-Query)
-- [provenance/msgfees/v1/tx.proto](#provenance/msgfees/v1/tx.proto)
- - [MsgAddMsgFeeProposalRequest](#provenance.msgfees.v1.MsgAddMsgFeeProposalRequest)
- - [MsgAddMsgFeeProposalResponse](#provenance.msgfees.v1.MsgAddMsgFeeProposalResponse)
- - [MsgAssessCustomMsgFeeRequest](#provenance.msgfees.v1.MsgAssessCustomMsgFeeRequest)
- - [MsgAssessCustomMsgFeeResponse](#provenance.msgfees.v1.MsgAssessCustomMsgFeeResponse)
- - [MsgRemoveMsgFeeProposalRequest](#provenance.msgfees.v1.MsgRemoveMsgFeeProposalRequest)
- - [MsgRemoveMsgFeeProposalResponse](#provenance.msgfees.v1.MsgRemoveMsgFeeProposalResponse)
- - [MsgUpdateConversionFeeDenomProposalRequest](#provenance.msgfees.v1.MsgUpdateConversionFeeDenomProposalRequest)
- - [MsgUpdateConversionFeeDenomProposalResponse](#provenance.msgfees.v1.MsgUpdateConversionFeeDenomProposalResponse)
- - [MsgUpdateMsgFeeProposalRequest](#provenance.msgfees.v1.MsgUpdateMsgFeeProposalRequest)
- - [MsgUpdateMsgFeeProposalResponse](#provenance.msgfees.v1.MsgUpdateMsgFeeProposalResponse)
- - [MsgUpdateNhashPerUsdMilProposalRequest](#provenance.msgfees.v1.MsgUpdateNhashPerUsdMilProposalRequest)
- - [MsgUpdateNhashPerUsdMilProposalResponse](#provenance.msgfees.v1.MsgUpdateNhashPerUsdMilProposalResponse)
+- [provenance/ibcratelimit/v1/event.proto](#provenance_ibcratelimit_v1_event-proto)
+ - [EventAckRevertFailure](#provenance-ibcratelimit-v1-EventAckRevertFailure)
+ - [EventParamsUpdated](#provenance-ibcratelimit-v1-EventParamsUpdated)
+ - [EventTimeoutRevertFailure](#provenance-ibcratelimit-v1-EventTimeoutRevertFailure)
- - [Msg](#provenance.msgfees.v1.Msg)
+- [provenance/ibcratelimit/v1/genesis.proto](#provenance_ibcratelimit_v1_genesis-proto)
+ - [GenesisState](#provenance-ibcratelimit-v1-GenesisState)
-- [provenance/name/v1/name.proto](#provenance/name/v1/name.proto)
- - [CreateRootNameProposal](#provenance.name.v1.CreateRootNameProposal)
- - [EventNameBound](#provenance.name.v1.EventNameBound)
- - [EventNameUnbound](#provenance.name.v1.EventNameUnbound)
- - [EventNameUpdate](#provenance.name.v1.EventNameUpdate)
- - [NameRecord](#provenance.name.v1.NameRecord)
- - [Params](#provenance.name.v1.Params)
+- [provenance/ibcratelimit/v1/params.proto](#provenance_ibcratelimit_v1_params-proto)
+ - [Params](#provenance-ibcratelimit-v1-Params)
-- [provenance/name/v1/genesis.proto](#provenance/name/v1/genesis.proto)
- - [GenesisState](#provenance.name.v1.GenesisState)
+- [provenance/marker/v1/tx.proto](#provenance_marker_v1_tx-proto)
+ - [MsgActivateRequest](#provenance-marker-v1-MsgActivateRequest)
+ - [MsgActivateResponse](#provenance-marker-v1-MsgActivateResponse)
+ - [MsgAddAccessRequest](#provenance-marker-v1-MsgAddAccessRequest)
+ - [MsgAddAccessResponse](#provenance-marker-v1-MsgAddAccessResponse)
+ - [MsgAddFinalizeActivateMarkerRequest](#provenance-marker-v1-MsgAddFinalizeActivateMarkerRequest)
+ - [MsgAddFinalizeActivateMarkerResponse](#provenance-marker-v1-MsgAddFinalizeActivateMarkerResponse)
+ - [MsgAddMarkerRequest](#provenance-marker-v1-MsgAddMarkerRequest)
+ - [MsgAddMarkerResponse](#provenance-marker-v1-MsgAddMarkerResponse)
+ - [MsgAddNetAssetValuesRequest](#provenance-marker-v1-MsgAddNetAssetValuesRequest)
+ - [MsgAddNetAssetValuesResponse](#provenance-marker-v1-MsgAddNetAssetValuesResponse)
+ - [MsgBurnRequest](#provenance-marker-v1-MsgBurnRequest)
+ - [MsgBurnResponse](#provenance-marker-v1-MsgBurnResponse)
+ - [MsgCancelRequest](#provenance-marker-v1-MsgCancelRequest)
+ - [MsgCancelResponse](#provenance-marker-v1-MsgCancelResponse)
+ - [MsgChangeStatusProposalRequest](#provenance-marker-v1-MsgChangeStatusProposalRequest)
+ - [MsgChangeStatusProposalResponse](#provenance-marker-v1-MsgChangeStatusProposalResponse)
+ - [MsgDeleteAccessRequest](#provenance-marker-v1-MsgDeleteAccessRequest)
+ - [MsgDeleteAccessResponse](#provenance-marker-v1-MsgDeleteAccessResponse)
+ - [MsgDeleteRequest](#provenance-marker-v1-MsgDeleteRequest)
+ - [MsgDeleteResponse](#provenance-marker-v1-MsgDeleteResponse)
+ - [MsgFinalizeRequest](#provenance-marker-v1-MsgFinalizeRequest)
+ - [MsgFinalizeResponse](#provenance-marker-v1-MsgFinalizeResponse)
+ - [MsgGrantAllowanceRequest](#provenance-marker-v1-MsgGrantAllowanceRequest)
+ - [MsgGrantAllowanceResponse](#provenance-marker-v1-MsgGrantAllowanceResponse)
+ - [MsgIbcTransferRequest](#provenance-marker-v1-MsgIbcTransferRequest)
+ - [MsgIbcTransferResponse](#provenance-marker-v1-MsgIbcTransferResponse)
+ - [MsgMintRequest](#provenance-marker-v1-MsgMintRequest)
+ - [MsgMintResponse](#provenance-marker-v1-MsgMintResponse)
+ - [MsgRemoveAdministratorProposalRequest](#provenance-marker-v1-MsgRemoveAdministratorProposalRequest)
+ - [MsgRemoveAdministratorProposalResponse](#provenance-marker-v1-MsgRemoveAdministratorProposalResponse)
+ - [MsgSetAccountDataRequest](#provenance-marker-v1-MsgSetAccountDataRequest)
+ - [MsgSetAccountDataResponse](#provenance-marker-v1-MsgSetAccountDataResponse)
+ - [MsgSetAdministratorProposalRequest](#provenance-marker-v1-MsgSetAdministratorProposalRequest)
+ - [MsgSetAdministratorProposalResponse](#provenance-marker-v1-MsgSetAdministratorProposalResponse)
+ - [MsgSetDenomMetadataProposalRequest](#provenance-marker-v1-MsgSetDenomMetadataProposalRequest)
+ - [MsgSetDenomMetadataProposalResponse](#provenance-marker-v1-MsgSetDenomMetadataProposalResponse)
+ - [MsgSetDenomMetadataRequest](#provenance-marker-v1-MsgSetDenomMetadataRequest)
+ - [MsgSetDenomMetadataResponse](#provenance-marker-v1-MsgSetDenomMetadataResponse)
+ - [MsgSupplyDecreaseProposalRequest](#provenance-marker-v1-MsgSupplyDecreaseProposalRequest)
+ - [MsgSupplyDecreaseProposalResponse](#provenance-marker-v1-MsgSupplyDecreaseProposalResponse)
+ - [MsgSupplyIncreaseProposalRequest](#provenance-marker-v1-MsgSupplyIncreaseProposalRequest)
+ - [MsgSupplyIncreaseProposalResponse](#provenance-marker-v1-MsgSupplyIncreaseProposalResponse)
+ - [MsgTransferRequest](#provenance-marker-v1-MsgTransferRequest)
+ - [MsgTransferResponse](#provenance-marker-v1-MsgTransferResponse)
+ - [MsgUpdateForcedTransferRequest](#provenance-marker-v1-MsgUpdateForcedTransferRequest)
+ - [MsgUpdateForcedTransferResponse](#provenance-marker-v1-MsgUpdateForcedTransferResponse)
+ - [MsgUpdateParamsRequest](#provenance-marker-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-marker-v1-MsgUpdateParamsResponse)
+ - [MsgUpdateRequiredAttributesRequest](#provenance-marker-v1-MsgUpdateRequiredAttributesRequest)
+ - [MsgUpdateRequiredAttributesResponse](#provenance-marker-v1-MsgUpdateRequiredAttributesResponse)
+ - [MsgUpdateSendDenyListRequest](#provenance-marker-v1-MsgUpdateSendDenyListRequest)
+ - [MsgUpdateSendDenyListResponse](#provenance-marker-v1-MsgUpdateSendDenyListResponse)
+ - [MsgWithdrawEscrowProposalRequest](#provenance-marker-v1-MsgWithdrawEscrowProposalRequest)
+ - [MsgWithdrawEscrowProposalResponse](#provenance-marker-v1-MsgWithdrawEscrowProposalResponse)
+ - [MsgWithdrawRequest](#provenance-marker-v1-MsgWithdrawRequest)
+ - [MsgWithdrawResponse](#provenance-marker-v1-MsgWithdrawResponse)
-- [provenance/name/v1/query.proto](#provenance/name/v1/query.proto)
- - [QueryParamsRequest](#provenance.name.v1.QueryParamsRequest)
- - [QueryParamsResponse](#provenance.name.v1.QueryParamsResponse)
- - [QueryResolveRequest](#provenance.name.v1.QueryResolveRequest)
- - [QueryResolveResponse](#provenance.name.v1.QueryResolveResponse)
- - [QueryReverseLookupRequest](#provenance.name.v1.QueryReverseLookupRequest)
- - [QueryReverseLookupResponse](#provenance.name.v1.QueryReverseLookupResponse)
+ - [Msg](#provenance-marker-v1-Msg)
- - [Query](#provenance.name.v1.Query)
+- [provenance/marker/v1/si.proto](#provenance_marker_v1_si-proto)
+ - [SIPrefix](#provenance-marker-v1-SIPrefix)
-- [provenance/name/v1/tx.proto](#provenance/name/v1/tx.proto)
- - [MsgBindNameRequest](#provenance.name.v1.MsgBindNameRequest)
- - [MsgBindNameResponse](#provenance.name.v1.MsgBindNameResponse)
- - [MsgCreateRootNameRequest](#provenance.name.v1.MsgCreateRootNameRequest)
- - [MsgCreateRootNameResponse](#provenance.name.v1.MsgCreateRootNameResponse)
- - [MsgDeleteNameRequest](#provenance.name.v1.MsgDeleteNameRequest)
- - [MsgDeleteNameResponse](#provenance.name.v1.MsgDeleteNameResponse)
- - [MsgModifyNameRequest](#provenance.name.v1.MsgModifyNameRequest)
- - [MsgModifyNameResponse](#provenance.name.v1.MsgModifyNameResponse)
+- [provenance/marker/v1/marker.proto](#provenance_marker_v1_marker-proto)
+ - [EventDenomUnit](#provenance-marker-v1-EventDenomUnit)
+ - [EventMarkerAccess](#provenance-marker-v1-EventMarkerAccess)
+ - [EventMarkerActivate](#provenance-marker-v1-EventMarkerActivate)
+ - [EventMarkerAdd](#provenance-marker-v1-EventMarkerAdd)
+ - [EventMarkerAddAccess](#provenance-marker-v1-EventMarkerAddAccess)
+ - [EventMarkerBurn](#provenance-marker-v1-EventMarkerBurn)
+ - [EventMarkerCancel](#provenance-marker-v1-EventMarkerCancel)
+ - [EventMarkerDelete](#provenance-marker-v1-EventMarkerDelete)
+ - [EventMarkerDeleteAccess](#provenance-marker-v1-EventMarkerDeleteAccess)
+ - [EventMarkerFinalize](#provenance-marker-v1-EventMarkerFinalize)
+ - [EventMarkerMint](#provenance-marker-v1-EventMarkerMint)
+ - [EventMarkerParamsUpdated](#provenance-marker-v1-EventMarkerParamsUpdated)
+ - [EventMarkerSetDenomMetadata](#provenance-marker-v1-EventMarkerSetDenomMetadata)
+ - [EventMarkerTransfer](#provenance-marker-v1-EventMarkerTransfer)
+ - [EventMarkerWithdraw](#provenance-marker-v1-EventMarkerWithdraw)
+ - [EventSetNetAssetValue](#provenance-marker-v1-EventSetNetAssetValue)
+ - [MarkerAccount](#provenance-marker-v1-MarkerAccount)
+ - [NetAssetValue](#provenance-marker-v1-NetAssetValue)
+ - [Params](#provenance-marker-v1-Params)
- - [Msg](#provenance.name.v1.Msg)
+ - [MarkerStatus](#provenance-marker-v1-MarkerStatus)
+ - [MarkerType](#provenance-marker-v1-MarkerType)
-- [provenance/oracle/v1/event.proto](#provenance/oracle/v1/event.proto)
- - [EventOracleQueryError](#provenance.oracle.v1.EventOracleQueryError)
- - [EventOracleQuerySuccess](#provenance.oracle.v1.EventOracleQuerySuccess)
- - [EventOracleQueryTimeout](#provenance.oracle.v1.EventOracleQueryTimeout)
+- [provenance/marker/v1/query.proto](#provenance_marker_v1_query-proto)
+ - [Balance](#provenance-marker-v1-Balance)
+ - [QueryAccessRequest](#provenance-marker-v1-QueryAccessRequest)
+ - [QueryAccessResponse](#provenance-marker-v1-QueryAccessResponse)
+ - [QueryAccountDataRequest](#provenance-marker-v1-QueryAccountDataRequest)
+ - [QueryAccountDataResponse](#provenance-marker-v1-QueryAccountDataResponse)
+ - [QueryAllMarkersRequest](#provenance-marker-v1-QueryAllMarkersRequest)
+ - [QueryAllMarkersResponse](#provenance-marker-v1-QueryAllMarkersResponse)
+ - [QueryDenomMetadataRequest](#provenance-marker-v1-QueryDenomMetadataRequest)
+ - [QueryDenomMetadataResponse](#provenance-marker-v1-QueryDenomMetadataResponse)
+ - [QueryEscrowRequest](#provenance-marker-v1-QueryEscrowRequest)
+ - [QueryEscrowResponse](#provenance-marker-v1-QueryEscrowResponse)
+ - [QueryHoldingRequest](#provenance-marker-v1-QueryHoldingRequest)
+ - [QueryHoldingResponse](#provenance-marker-v1-QueryHoldingResponse)
+ - [QueryMarkerRequest](#provenance-marker-v1-QueryMarkerRequest)
+ - [QueryMarkerResponse](#provenance-marker-v1-QueryMarkerResponse)
+ - [QueryNetAssetValuesRequest](#provenance-marker-v1-QueryNetAssetValuesRequest)
+ - [QueryNetAssetValuesResponse](#provenance-marker-v1-QueryNetAssetValuesResponse)
+ - [QueryParamsRequest](#provenance-marker-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-marker-v1-QueryParamsResponse)
+ - [QuerySupplyRequest](#provenance-marker-v1-QuerySupplyRequest)
+ - [QuerySupplyResponse](#provenance-marker-v1-QuerySupplyResponse)
-- [provenance/oracle/v1/genesis.proto](#provenance/oracle/v1/genesis.proto)
- - [GenesisState](#provenance.oracle.v1.GenesisState)
+ - [Query](#provenance-marker-v1-Query)
-- [provenance/oracle/v1/query.proto](#provenance/oracle/v1/query.proto)
- - [QueryOracleAddressRequest](#provenance.oracle.v1.QueryOracleAddressRequest)
- - [QueryOracleAddressResponse](#provenance.oracle.v1.QueryOracleAddressResponse)
- - [QueryOracleRequest](#provenance.oracle.v1.QueryOracleRequest)
- - [QueryOracleResponse](#provenance.oracle.v1.QueryOracleResponse)
+- [provenance/marker/v1/accessgrant.proto](#provenance_marker_v1_accessgrant-proto)
+ - [AccessGrant](#provenance-marker-v1-AccessGrant)
- - [Query](#provenance.oracle.v1.Query)
+ - [Access](#provenance-marker-v1-Access)
-- [provenance/oracle/v1/tx.proto](#provenance/oracle/v1/tx.proto)
- - [MsgSendQueryOracleRequest](#provenance.oracle.v1.MsgSendQueryOracleRequest)
- - [MsgSendQueryOracleResponse](#provenance.oracle.v1.MsgSendQueryOracleResponse)
- - [MsgUpdateOracleRequest](#provenance.oracle.v1.MsgUpdateOracleRequest)
- - [MsgUpdateOracleResponse](#provenance.oracle.v1.MsgUpdateOracleResponse)
+- [provenance/marker/v1/authz.proto](#provenance_marker_v1_authz-proto)
+ - [MarkerTransferAuthorization](#provenance-marker-v1-MarkerTransferAuthorization)
- - [Msg](#provenance.oracle.v1.Msg)
+- [provenance/marker/v1/genesis.proto](#provenance_marker_v1_genesis-proto)
+ - [DenySendAddress](#provenance-marker-v1-DenySendAddress)
+ - [GenesisState](#provenance-marker-v1-GenesisState)
+ - [MarkerNetAssetValues](#provenance-marker-v1-MarkerNetAssetValues)
-- [provenance/reward/v1/reward.proto](#provenance/reward/v1/reward.proto)
- - [ActionCounter](#provenance.reward.v1.ActionCounter)
- - [ActionDelegate](#provenance.reward.v1.ActionDelegate)
- - [ActionTransfer](#provenance.reward.v1.ActionTransfer)
- - [ActionVote](#provenance.reward.v1.ActionVote)
- - [ClaimPeriodRewardDistribution](#provenance.reward.v1.ClaimPeriodRewardDistribution)
- - [QualifyingAction](#provenance.reward.v1.QualifyingAction)
- - [QualifyingActions](#provenance.reward.v1.QualifyingActions)
- - [RewardAccountState](#provenance.reward.v1.RewardAccountState)
- - [RewardProgram](#provenance.reward.v1.RewardProgram)
+- [provenance/marker/v1/proposals.proto](#provenance_marker_v1_proposals-proto)
+ - [AddMarkerProposal](#provenance-marker-v1-AddMarkerProposal)
+ - [ChangeStatusProposal](#provenance-marker-v1-ChangeStatusProposal)
+ - [RemoveAdministratorProposal](#provenance-marker-v1-RemoveAdministratorProposal)
+ - [SetAdministratorProposal](#provenance-marker-v1-SetAdministratorProposal)
+ - [SetDenomMetadataProposal](#provenance-marker-v1-SetDenomMetadataProposal)
+ - [SupplyDecreaseProposal](#provenance-marker-v1-SupplyDecreaseProposal)
+ - [SupplyIncreaseProposal](#provenance-marker-v1-SupplyIncreaseProposal)
+ - [WithdrawEscrowProposal](#provenance-marker-v1-WithdrawEscrowProposal)
- - [RewardAccountState.ClaimStatus](#provenance.reward.v1.RewardAccountState.ClaimStatus)
- - [RewardProgram.State](#provenance.reward.v1.RewardProgram.State)
+- [provenance/name/v1/tx.proto](#provenance_name_v1_tx-proto)
+ - [MsgBindNameRequest](#provenance-name-v1-MsgBindNameRequest)
+ - [MsgBindNameResponse](#provenance-name-v1-MsgBindNameResponse)
+ - [MsgCreateRootNameRequest](#provenance-name-v1-MsgCreateRootNameRequest)
+ - [MsgCreateRootNameResponse](#provenance-name-v1-MsgCreateRootNameResponse)
+ - [MsgDeleteNameRequest](#provenance-name-v1-MsgDeleteNameRequest)
+ - [MsgDeleteNameResponse](#provenance-name-v1-MsgDeleteNameResponse)
+ - [MsgModifyNameRequest](#provenance-name-v1-MsgModifyNameRequest)
+ - [MsgModifyNameResponse](#provenance-name-v1-MsgModifyNameResponse)
+ - [MsgUpdateParamsRequest](#provenance-name-v1-MsgUpdateParamsRequest)
+ - [MsgUpdateParamsResponse](#provenance-name-v1-MsgUpdateParamsResponse)
-- [provenance/reward/v1/genesis.proto](#provenance/reward/v1/genesis.proto)
- - [GenesisState](#provenance.reward.v1.GenesisState)
+ - [Msg](#provenance-name-v1-Msg)
-- [provenance/reward/v1/query.proto](#provenance/reward/v1/query.proto)
- - [QueryClaimPeriodRewardDistributionsByIDRequest](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsByIDRequest)
- - [QueryClaimPeriodRewardDistributionsByIDResponse](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsByIDResponse)
- - [QueryClaimPeriodRewardDistributionsRequest](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsRequest)
- - [QueryClaimPeriodRewardDistributionsResponse](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsResponse)
- - [QueryRewardDistributionsByAddressRequest](#provenance.reward.v1.QueryRewardDistributionsByAddressRequest)
- - [QueryRewardDistributionsByAddressResponse](#provenance.reward.v1.QueryRewardDistributionsByAddressResponse)
- - [QueryRewardProgramByIDRequest](#provenance.reward.v1.QueryRewardProgramByIDRequest)
- - [QueryRewardProgramByIDResponse](#provenance.reward.v1.QueryRewardProgramByIDResponse)
- - [QueryRewardProgramsRequest](#provenance.reward.v1.QueryRewardProgramsRequest)
- - [QueryRewardProgramsResponse](#provenance.reward.v1.QueryRewardProgramsResponse)
- - [RewardAccountResponse](#provenance.reward.v1.RewardAccountResponse)
+- [provenance/name/v1/name.proto](#provenance_name_v1_name-proto)
+ - [CreateRootNameProposal](#provenance-name-v1-CreateRootNameProposal)
+ - [EventNameBound](#provenance-name-v1-EventNameBound)
+ - [EventNameParamsUpdated](#provenance-name-v1-EventNameParamsUpdated)
+ - [EventNameUnbound](#provenance-name-v1-EventNameUnbound)
+ - [EventNameUpdate](#provenance-name-v1-EventNameUpdate)
+ - [NameRecord](#provenance-name-v1-NameRecord)
+ - [Params](#provenance-name-v1-Params)
- - [QueryRewardProgramsRequest.QueryType](#provenance.reward.v1.QueryRewardProgramsRequest.QueryType)
+- [provenance/name/v1/query.proto](#provenance_name_v1_query-proto)
+ - [QueryParamsRequest](#provenance-name-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-name-v1-QueryParamsResponse)
+ - [QueryResolveRequest](#provenance-name-v1-QueryResolveRequest)
+ - [QueryResolveResponse](#provenance-name-v1-QueryResolveResponse)
+ - [QueryReverseLookupRequest](#provenance-name-v1-QueryReverseLookupRequest)
+ - [QueryReverseLookupResponse](#provenance-name-v1-QueryReverseLookupResponse)
- - [Query](#provenance.reward.v1.Query)
+ - [Query](#provenance-name-v1-Query)
-- [provenance/reward/v1/tx.proto](#provenance/reward/v1/tx.proto)
- - [ClaimedRewardPeriodDetail](#provenance.reward.v1.ClaimedRewardPeriodDetail)
- - [MsgClaimAllRewardsRequest](#provenance.reward.v1.MsgClaimAllRewardsRequest)
- - [MsgClaimAllRewardsResponse](#provenance.reward.v1.MsgClaimAllRewardsResponse)
- - [MsgClaimRewardsRequest](#provenance.reward.v1.MsgClaimRewardsRequest)
- - [MsgClaimRewardsResponse](#provenance.reward.v1.MsgClaimRewardsResponse)
- - [MsgCreateRewardProgramRequest](#provenance.reward.v1.MsgCreateRewardProgramRequest)
- - [MsgCreateRewardProgramResponse](#provenance.reward.v1.MsgCreateRewardProgramResponse)
- - [MsgEndRewardProgramRequest](#provenance.reward.v1.MsgEndRewardProgramRequest)
- - [MsgEndRewardProgramResponse](#provenance.reward.v1.MsgEndRewardProgramResponse)
- - [RewardProgramClaimDetail](#provenance.reward.v1.RewardProgramClaimDetail)
+- [provenance/name/v1/genesis.proto](#provenance_name_v1_genesis-proto)
+ - [GenesisState](#provenance-name-v1-GenesisState)
- - [Msg](#provenance.reward.v1.Msg)
+- [provenance/metadata/v1/tx.proto](#provenance_metadata_v1_tx-proto)
+ - [MsgAddContractSpecToScopeSpecRequest](#provenance-metadata-v1-MsgAddContractSpecToScopeSpecRequest)
+ - [MsgAddContractSpecToScopeSpecResponse](#provenance-metadata-v1-MsgAddContractSpecToScopeSpecResponse)
+ - [MsgAddNetAssetValuesRequest](#provenance-metadata-v1-MsgAddNetAssetValuesRequest)
+ - [MsgAddNetAssetValuesResponse](#provenance-metadata-v1-MsgAddNetAssetValuesResponse)
+ - [MsgAddScopeDataAccessRequest](#provenance-metadata-v1-MsgAddScopeDataAccessRequest)
+ - [MsgAddScopeDataAccessResponse](#provenance-metadata-v1-MsgAddScopeDataAccessResponse)
+ - [MsgAddScopeOwnerRequest](#provenance-metadata-v1-MsgAddScopeOwnerRequest)
+ - [MsgAddScopeOwnerResponse](#provenance-metadata-v1-MsgAddScopeOwnerResponse)
+ - [MsgBindOSLocatorRequest](#provenance-metadata-v1-MsgBindOSLocatorRequest)
+ - [MsgBindOSLocatorResponse](#provenance-metadata-v1-MsgBindOSLocatorResponse)
+ - [MsgDeleteContractSpecFromScopeSpecRequest](#provenance-metadata-v1-MsgDeleteContractSpecFromScopeSpecRequest)
+ - [MsgDeleteContractSpecFromScopeSpecResponse](#provenance-metadata-v1-MsgDeleteContractSpecFromScopeSpecResponse)
+ - [MsgDeleteContractSpecificationRequest](#provenance-metadata-v1-MsgDeleteContractSpecificationRequest)
+ - [MsgDeleteContractSpecificationResponse](#provenance-metadata-v1-MsgDeleteContractSpecificationResponse)
+ - [MsgDeleteOSLocatorRequest](#provenance-metadata-v1-MsgDeleteOSLocatorRequest)
+ - [MsgDeleteOSLocatorResponse](#provenance-metadata-v1-MsgDeleteOSLocatorResponse)
+ - [MsgDeleteRecordRequest](#provenance-metadata-v1-MsgDeleteRecordRequest)
+ - [MsgDeleteRecordResponse](#provenance-metadata-v1-MsgDeleteRecordResponse)
+ - [MsgDeleteRecordSpecificationRequest](#provenance-metadata-v1-MsgDeleteRecordSpecificationRequest)
+ - [MsgDeleteRecordSpecificationResponse](#provenance-metadata-v1-MsgDeleteRecordSpecificationResponse)
+ - [MsgDeleteScopeDataAccessRequest](#provenance-metadata-v1-MsgDeleteScopeDataAccessRequest)
+ - [MsgDeleteScopeDataAccessResponse](#provenance-metadata-v1-MsgDeleteScopeDataAccessResponse)
+ - [MsgDeleteScopeOwnerRequest](#provenance-metadata-v1-MsgDeleteScopeOwnerRequest)
+ - [MsgDeleteScopeOwnerResponse](#provenance-metadata-v1-MsgDeleteScopeOwnerResponse)
+ - [MsgDeleteScopeRequest](#provenance-metadata-v1-MsgDeleteScopeRequest)
+ - [MsgDeleteScopeResponse](#provenance-metadata-v1-MsgDeleteScopeResponse)
+ - [MsgDeleteScopeSpecificationRequest](#provenance-metadata-v1-MsgDeleteScopeSpecificationRequest)
+ - [MsgDeleteScopeSpecificationResponse](#provenance-metadata-v1-MsgDeleteScopeSpecificationResponse)
+ - [MsgMigrateValueOwnerRequest](#provenance-metadata-v1-MsgMigrateValueOwnerRequest)
+ - [MsgMigrateValueOwnerResponse](#provenance-metadata-v1-MsgMigrateValueOwnerResponse)
+ - [MsgModifyOSLocatorRequest](#provenance-metadata-v1-MsgModifyOSLocatorRequest)
+ - [MsgModifyOSLocatorResponse](#provenance-metadata-v1-MsgModifyOSLocatorResponse)
+ - [MsgP8eMemorializeContractRequest](#provenance-metadata-v1-MsgP8eMemorializeContractRequest)
+ - [MsgP8eMemorializeContractResponse](#provenance-metadata-v1-MsgP8eMemorializeContractResponse)
+ - [MsgSetAccountDataRequest](#provenance-metadata-v1-MsgSetAccountDataRequest)
+ - [MsgSetAccountDataResponse](#provenance-metadata-v1-MsgSetAccountDataResponse)
+ - [MsgUpdateValueOwnersRequest](#provenance-metadata-v1-MsgUpdateValueOwnersRequest)
+ - [MsgUpdateValueOwnersResponse](#provenance-metadata-v1-MsgUpdateValueOwnersResponse)
+ - [MsgWriteContractSpecificationRequest](#provenance-metadata-v1-MsgWriteContractSpecificationRequest)
+ - [MsgWriteContractSpecificationResponse](#provenance-metadata-v1-MsgWriteContractSpecificationResponse)
+ - [MsgWriteP8eContractSpecRequest](#provenance-metadata-v1-MsgWriteP8eContractSpecRequest)
+ - [MsgWriteP8eContractSpecResponse](#provenance-metadata-v1-MsgWriteP8eContractSpecResponse)
+ - [MsgWriteRecordRequest](#provenance-metadata-v1-MsgWriteRecordRequest)
+ - [MsgWriteRecordResponse](#provenance-metadata-v1-MsgWriteRecordResponse)
+ - [MsgWriteRecordSpecificationRequest](#provenance-metadata-v1-MsgWriteRecordSpecificationRequest)
+ - [MsgWriteRecordSpecificationResponse](#provenance-metadata-v1-MsgWriteRecordSpecificationResponse)
+ - [MsgWriteScopeRequest](#provenance-metadata-v1-MsgWriteScopeRequest)
+ - [MsgWriteScopeResponse](#provenance-metadata-v1-MsgWriteScopeResponse)
+ - [MsgWriteScopeSpecificationRequest](#provenance-metadata-v1-MsgWriteScopeSpecificationRequest)
+ - [MsgWriteScopeSpecificationResponse](#provenance-metadata-v1-MsgWriteScopeSpecificationResponse)
+ - [MsgWriteSessionRequest](#provenance-metadata-v1-MsgWriteSessionRequest)
+ - [MsgWriteSessionResponse](#provenance-metadata-v1-MsgWriteSessionResponse)
+ - [SessionIdComponents](#provenance-metadata-v1-SessionIdComponents)
-- [provenance/trigger/v1/event.proto](#provenance/trigger/v1/event.proto)
- - [EventTriggerCreated](#provenance.trigger.v1.EventTriggerCreated)
- - [EventTriggerDestroyed](#provenance.trigger.v1.EventTriggerDestroyed)
- - [EventTriggerDetected](#provenance.trigger.v1.EventTriggerDetected)
- - [EventTriggerExecuted](#provenance.trigger.v1.EventTriggerExecuted)
+ - [Msg](#provenance-metadata-v1-Msg)
-- [provenance/trigger/v1/trigger.proto](#provenance/trigger/v1/trigger.proto)
- - [Attribute](#provenance.trigger.v1.Attribute)
- - [BlockHeightEvent](#provenance.trigger.v1.BlockHeightEvent)
- - [BlockTimeEvent](#provenance.trigger.v1.BlockTimeEvent)
- - [QueuedTrigger](#provenance.trigger.v1.QueuedTrigger)
- - [TransactionEvent](#provenance.trigger.v1.TransactionEvent)
- - [Trigger](#provenance.trigger.v1.Trigger)
+- [provenance/metadata/v1/events.proto](#provenance_metadata_v1_events-proto)
+ - [EventContractSpecificationCreated](#provenance-metadata-v1-EventContractSpecificationCreated)
+ - [EventContractSpecificationDeleted](#provenance-metadata-v1-EventContractSpecificationDeleted)
+ - [EventContractSpecificationUpdated](#provenance-metadata-v1-EventContractSpecificationUpdated)
+ - [EventOSLocatorCreated](#provenance-metadata-v1-EventOSLocatorCreated)
+ - [EventOSLocatorDeleted](#provenance-metadata-v1-EventOSLocatorDeleted)
+ - [EventOSLocatorUpdated](#provenance-metadata-v1-EventOSLocatorUpdated)
+ - [EventRecordCreated](#provenance-metadata-v1-EventRecordCreated)
+ - [EventRecordDeleted](#provenance-metadata-v1-EventRecordDeleted)
+ - [EventRecordSpecificationCreated](#provenance-metadata-v1-EventRecordSpecificationCreated)
+ - [EventRecordSpecificationDeleted](#provenance-metadata-v1-EventRecordSpecificationDeleted)
+ - [EventRecordSpecificationUpdated](#provenance-metadata-v1-EventRecordSpecificationUpdated)
+ - [EventRecordUpdated](#provenance-metadata-v1-EventRecordUpdated)
+ - [EventScopeCreated](#provenance-metadata-v1-EventScopeCreated)
+ - [EventScopeDeleted](#provenance-metadata-v1-EventScopeDeleted)
+ - [EventScopeSpecificationCreated](#provenance-metadata-v1-EventScopeSpecificationCreated)
+ - [EventScopeSpecificationDeleted](#provenance-metadata-v1-EventScopeSpecificationDeleted)
+ - [EventScopeSpecificationUpdated](#provenance-metadata-v1-EventScopeSpecificationUpdated)
+ - [EventScopeUpdated](#provenance-metadata-v1-EventScopeUpdated)
+ - [EventSessionCreated](#provenance-metadata-v1-EventSessionCreated)
+ - [EventSessionDeleted](#provenance-metadata-v1-EventSessionDeleted)
+ - [EventSessionUpdated](#provenance-metadata-v1-EventSessionUpdated)
+ - [EventSetNetAssetValue](#provenance-metadata-v1-EventSetNetAssetValue)
+ - [EventTxCompleted](#provenance-metadata-v1-EventTxCompleted)
-- [provenance/trigger/v1/genesis.proto](#provenance/trigger/v1/genesis.proto)
- - [GasLimit](#provenance.trigger.v1.GasLimit)
- - [GenesisState](#provenance.trigger.v1.GenesisState)
+- [provenance/metadata/v1/specification.proto](#provenance_metadata_v1_specification-proto)
+ - [ContractSpecification](#provenance-metadata-v1-ContractSpecification)
+ - [Description](#provenance-metadata-v1-Description)
+ - [InputSpecification](#provenance-metadata-v1-InputSpecification)
+ - [RecordSpecification](#provenance-metadata-v1-RecordSpecification)
+ - [ScopeSpecification](#provenance-metadata-v1-ScopeSpecification)
-- [provenance/trigger/v1/query.proto](#provenance/trigger/v1/query.proto)
- - [QueryTriggerByIDRequest](#provenance.trigger.v1.QueryTriggerByIDRequest)
- - [QueryTriggerByIDResponse](#provenance.trigger.v1.QueryTriggerByIDResponse)
- - [QueryTriggersRequest](#provenance.trigger.v1.QueryTriggersRequest)
- - [QueryTriggersResponse](#provenance.trigger.v1.QueryTriggersResponse)
+ - [DefinitionType](#provenance-metadata-v1-DefinitionType)
+ - [PartyType](#provenance-metadata-v1-PartyType)
- - [Query](#provenance.trigger.v1.Query)
+- [provenance/metadata/v1/scope.proto](#provenance_metadata_v1_scope-proto)
+ - [AuditFields](#provenance-metadata-v1-AuditFields)
+ - [NetAssetValue](#provenance-metadata-v1-NetAssetValue)
+ - [Party](#provenance-metadata-v1-Party)
+ - [Process](#provenance-metadata-v1-Process)
+ - [Record](#provenance-metadata-v1-Record)
+ - [RecordInput](#provenance-metadata-v1-RecordInput)
+ - [RecordOutput](#provenance-metadata-v1-RecordOutput)
+ - [Scope](#provenance-metadata-v1-Scope)
+ - [Session](#provenance-metadata-v1-Session)
-- [provenance/trigger/v1/tx.proto](#provenance/trigger/v1/tx.proto)
- - [MsgCreateTriggerRequest](#provenance.trigger.v1.MsgCreateTriggerRequest)
- - [MsgCreateTriggerResponse](#provenance.trigger.v1.MsgCreateTriggerResponse)
- - [MsgDestroyTriggerRequest](#provenance.trigger.v1.MsgDestroyTriggerRequest)
- - [MsgDestroyTriggerResponse](#provenance.trigger.v1.MsgDestroyTriggerResponse)
+ - [RecordInputStatus](#provenance-metadata-v1-RecordInputStatus)
+ - [ResultStatus](#provenance-metadata-v1-ResultStatus)
- - [Msg](#provenance.trigger.v1.Msg)
+- [provenance/metadata/v1/query.proto](#provenance_metadata_v1_query-proto)
+ - [AccountDataRequest](#provenance-metadata-v1-AccountDataRequest)
+ - [AccountDataResponse](#provenance-metadata-v1-AccountDataResponse)
+ - [ContractSpecificationRequest](#provenance-metadata-v1-ContractSpecificationRequest)
+ - [ContractSpecificationResponse](#provenance-metadata-v1-ContractSpecificationResponse)
+ - [ContractSpecificationWrapper](#provenance-metadata-v1-ContractSpecificationWrapper)
+ - [ContractSpecificationsAllRequest](#provenance-metadata-v1-ContractSpecificationsAllRequest)
+ - [ContractSpecificationsAllResponse](#provenance-metadata-v1-ContractSpecificationsAllResponse)
+ - [GetByAddrRequest](#provenance-metadata-v1-GetByAddrRequest)
+ - [GetByAddrResponse](#provenance-metadata-v1-GetByAddrResponse)
+ - [OSAllLocatorsRequest](#provenance-metadata-v1-OSAllLocatorsRequest)
+ - [OSAllLocatorsResponse](#provenance-metadata-v1-OSAllLocatorsResponse)
+ - [OSLocatorParamsRequest](#provenance-metadata-v1-OSLocatorParamsRequest)
+ - [OSLocatorParamsResponse](#provenance-metadata-v1-OSLocatorParamsResponse)
+ - [OSLocatorRequest](#provenance-metadata-v1-OSLocatorRequest)
+ - [OSLocatorResponse](#provenance-metadata-v1-OSLocatorResponse)
+ - [OSLocatorsByScopeRequest](#provenance-metadata-v1-OSLocatorsByScopeRequest)
+ - [OSLocatorsByScopeResponse](#provenance-metadata-v1-OSLocatorsByScopeResponse)
+ - [OSLocatorsByURIRequest](#provenance-metadata-v1-OSLocatorsByURIRequest)
+ - [OSLocatorsByURIResponse](#provenance-metadata-v1-OSLocatorsByURIResponse)
+ - [OwnershipRequest](#provenance-metadata-v1-OwnershipRequest)
+ - [OwnershipResponse](#provenance-metadata-v1-OwnershipResponse)
+ - [QueryParamsRequest](#provenance-metadata-v1-QueryParamsRequest)
+ - [QueryParamsResponse](#provenance-metadata-v1-QueryParamsResponse)
+ - [QueryScopeNetAssetValuesRequest](#provenance-metadata-v1-QueryScopeNetAssetValuesRequest)
+ - [QueryScopeNetAssetValuesResponse](#provenance-metadata-v1-QueryScopeNetAssetValuesResponse)
+ - [RecordSpecificationRequest](#provenance-metadata-v1-RecordSpecificationRequest)
+ - [RecordSpecificationResponse](#provenance-metadata-v1-RecordSpecificationResponse)
+ - [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper)
+ - [RecordSpecificationsAllRequest](#provenance-metadata-v1-RecordSpecificationsAllRequest)
+ - [RecordSpecificationsAllResponse](#provenance-metadata-v1-RecordSpecificationsAllResponse)
+ - [RecordSpecificationsForContractSpecificationRequest](#provenance-metadata-v1-RecordSpecificationsForContractSpecificationRequest)
+ - [RecordSpecificationsForContractSpecificationResponse](#provenance-metadata-v1-RecordSpecificationsForContractSpecificationResponse)
+ - [RecordWrapper](#provenance-metadata-v1-RecordWrapper)
+ - [RecordsAllRequest](#provenance-metadata-v1-RecordsAllRequest)
+ - [RecordsAllResponse](#provenance-metadata-v1-RecordsAllResponse)
+ - [RecordsRequest](#provenance-metadata-v1-RecordsRequest)
+ - [RecordsResponse](#provenance-metadata-v1-RecordsResponse)
+ - [ScopeRequest](#provenance-metadata-v1-ScopeRequest)
+ - [ScopeResponse](#provenance-metadata-v1-ScopeResponse)
+ - [ScopeSpecificationRequest](#provenance-metadata-v1-ScopeSpecificationRequest)
+ - [ScopeSpecificationResponse](#provenance-metadata-v1-ScopeSpecificationResponse)
+ - [ScopeSpecificationWrapper](#provenance-metadata-v1-ScopeSpecificationWrapper)
+ - [ScopeSpecificationsAllRequest](#provenance-metadata-v1-ScopeSpecificationsAllRequest)
+ - [ScopeSpecificationsAllResponse](#provenance-metadata-v1-ScopeSpecificationsAllResponse)
+ - [ScopeWrapper](#provenance-metadata-v1-ScopeWrapper)
+ - [ScopesAllRequest](#provenance-metadata-v1-ScopesAllRequest)
+ - [ScopesAllResponse](#provenance-metadata-v1-ScopesAllResponse)
+ - [SessionWrapper](#provenance-metadata-v1-SessionWrapper)
+ - [SessionsAllRequest](#provenance-metadata-v1-SessionsAllRequest)
+ - [SessionsAllResponse](#provenance-metadata-v1-SessionsAllResponse)
+ - [SessionsRequest](#provenance-metadata-v1-SessionsRequest)
+ - [SessionsResponse](#provenance-metadata-v1-SessionsResponse)
+ - [ValueOwnershipRequest](#provenance-metadata-v1-ValueOwnershipRequest)
+ - [ValueOwnershipResponse](#provenance-metadata-v1-ValueOwnershipResponse)
+
+ - [Query](#provenance-metadata-v1-Query)
+
+- [provenance/metadata/v1/objectstore.proto](#provenance_metadata_v1_objectstore-proto)
+ - [OSLocatorParams](#provenance-metadata-v1-OSLocatorParams)
+ - [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator)
+
+- [provenance/metadata/v1/metadata.proto](#provenance_metadata_v1_metadata-proto)
+ - [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo)
+ - [Params](#provenance-metadata-v1-Params)
+ - [RecordIdInfo](#provenance-metadata-v1-RecordIdInfo)
+ - [RecordSpecIdInfo](#provenance-metadata-v1-RecordSpecIdInfo)
+ - [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo)
+ - [ScopeSpecIdInfo](#provenance-metadata-v1-ScopeSpecIdInfo)
+ - [SessionIdInfo](#provenance-metadata-v1-SessionIdInfo)
+
+- [provenance/metadata/v1/p8e/p8e.proto](#provenance_metadata_v1_p8e_p8e-proto)
+ - [Condition](#provenance-metadata-v1-p8e-Condition)
+ - [ConditionSpec](#provenance-metadata-v1-p8e-ConditionSpec)
+ - [Consideration](#provenance-metadata-v1-p8e-Consideration)
+ - [ConsiderationSpec](#provenance-metadata-v1-p8e-ConsiderationSpec)
+ - [Contract](#provenance-metadata-v1-p8e-Contract)
+ - [ContractSpec](#provenance-metadata-v1-p8e-ContractSpec)
+ - [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec)
+ - [ExecutionResult](#provenance-metadata-v1-p8e-ExecutionResult)
+ - [Fact](#provenance-metadata-v1-p8e-Fact)
+ - [Location](#provenance-metadata-v1-p8e-Location)
+ - [OutputSpec](#provenance-metadata-v1-p8e-OutputSpec)
+ - [ProposedFact](#provenance-metadata-v1-p8e-ProposedFact)
+ - [ProvenanceReference](#provenance-metadata-v1-p8e-ProvenanceReference)
+ - [PublicKey](#provenance-metadata-v1-p8e-PublicKey)
+ - [Recital](#provenance-metadata-v1-p8e-Recital)
+ - [Recitals](#provenance-metadata-v1-p8e-Recitals)
+ - [Signature](#provenance-metadata-v1-p8e-Signature)
+ - [SignatureSet](#provenance-metadata-v1-p8e-SignatureSet)
+ - [SigningAndEncryptionPublicKeys](#provenance-metadata-v1-p8e-SigningAndEncryptionPublicKeys)
+ - [Timestamp](#provenance-metadata-v1-p8e-Timestamp)
+ - [UUID](#provenance-metadata-v1-p8e-UUID)
+
+ - [DefinitionSpecType](#provenance-metadata-v1-p8e-DefinitionSpecType)
+ - [ExecutionResultType](#provenance-metadata-v1-p8e-ExecutionResultType)
+ - [PartyType](#provenance-metadata-v1-p8e-PartyType)
+ - [PublicKeyCurve](#provenance-metadata-v1-p8e-PublicKeyCurve)
+ - [PublicKeyType](#provenance-metadata-v1-p8e-PublicKeyType)
+
+- [provenance/metadata/v1/genesis.proto](#provenance_metadata_v1_genesis-proto)
+ - [GenesisState](#provenance-metadata-v1-GenesisState)
+ - [MarkerNetAssetValues](#provenance-metadata-v1-MarkerNetAssetValues)
+
+- [provenance/hold/v1/events.proto](#provenance_hold_v1_events-proto)
+ - [EventHoldAdded](#provenance-hold-v1-EventHoldAdded)
+ - [EventHoldReleased](#provenance-hold-v1-EventHoldReleased)
+
+- [provenance/hold/v1/hold.proto](#provenance_hold_v1_hold-proto)
+ - [AccountHold](#provenance-hold-v1-AccountHold)
+
+- [provenance/hold/v1/query.proto](#provenance_hold_v1_query-proto)
+ - [GetAllHoldsRequest](#provenance-hold-v1-GetAllHoldsRequest)
+ - [GetAllHoldsResponse](#provenance-hold-v1-GetAllHoldsResponse)
+ - [GetHoldsRequest](#provenance-hold-v1-GetHoldsRequest)
+ - [GetHoldsResponse](#provenance-hold-v1-GetHoldsResponse)
+
+ - [Query](#provenance-hold-v1-Query)
+
+- [provenance/hold/v1/genesis.proto](#provenance_hold_v1_genesis-proto)
+ - [GenesisState](#provenance-hold-v1-GenesisState)
- [Scalar Value Types](#scalar-value-types)
-
+
Top
-## provenance/attribute/v1/attribute.proto
+## cosmos/quarantine/v1beta1/tx.proto
-
+
-### Attribute
-Attribute holds a typed key/value structure for data associated with an account
+### MsgAccept
+MsgAccept represents a message for accepting quarantined funds.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `value` | [bytes](#bytes) | | The attribute value. |
-| `attribute_type` | [AttributeType](#provenance.attribute.v1.AttributeType) | | The attribute value type. |
-| `address` | [string](#string) | | The address the attribute is bound to |
-| `expiration_date` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that an attribute will expire. |
+| `to_address` | [string](#string) | | to_address is the address of the quarantined account that is accepting funds. |
+| `from_addresses` | [string](#string) | repeated | from_addresses is one or more addresses that have sent funds to the quarantined account. All funds quarantined for to_address from any from_addresses are marked as accepted and released if appropriate. At least one is required. |
+| `permanent` | [bool](#bool) | | permanent, if true, sets up auto-accept for the to_address from each from_address. If false (default), only the currently quarantined funds will be accepted. |
-
+
-### EventAccountDataUpdated
-EventAccountDataUpdated event emitted when accountdata is set, updated, or deleted.
+### MsgAcceptResponse
+MsgAcceptResponse defines the Msg/Accept response type.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | |
+| `funds_released` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | funds_released is the amount that was quarantined but has now been released and sent to the requester. |
-
+
-### EventAttributeAdd
-EventAttributeAdd event emitted when attribute is added
+### MsgDecline
+MsgDecline represents a message for declining quarantined funds.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `value` | [string](#string) | | |
-| `type` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `owner` | [string](#string) | | |
-| `expiration` | [string](#string) | | |
+| `to_address` | [string](#string) | | to_address is the address of the quarantined account that is accepting funds. |
+| `from_addresses` | [string](#string) | repeated | from_addresses is one or more addresses that have sent funds to the quarantined account. All funds quarantined for to_address from any from_addresses are marked as declined. At least one is required. |
+| `permanent` | [bool](#bool) | | permanent, if true, sets up auto-decline for the to_address from each from_address. If false (default), only the currently quarantined funds will be declined. |
-
-
-### EventAttributeDelete
-EventAttributeDelete event emitted when attribute is deleted
-
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `owner` | [string](#string) | | |
+### MsgDeclineResponse
+MsgDeclineResponse defines the Msg/Decline response type.
-
+
-### EventAttributeDistinctDelete
-EventAttributeDistinctDelete event emitted when attribute is deleted with matching value
+### MsgOptIn
+MsgOptIn represents a message for opting in to account quarantine.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `value` | [string](#string) | | |
-| `attribute_type` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `owner` | [string](#string) | | |
-
-
+| `to_address` | [string](#string) | | |
-
-### EventAttributeExpirationUpdate
-EventAttributeExpirationUpdate event emitted when attribute expiration is updated
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `value` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `owner` | [string](#string) | | |
-| `original_expiration` | [string](#string) | | |
-| `updated_expiration` | [string](#string) | | |
+### MsgOptInResponse
+MsgOptInResponse defines the Msg/OptIn response type.
-
+
-### EventAttributeExpired
-EventAttributeExpired event emitted when attribute has expired and been deleted in BeginBlocker
+### MsgOptOut
+MsgOptOut represents a message for opting in to account quarantine.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `value_hash` | [string](#string) | | |
-| `attribute_type` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `expiration` | [string](#string) | | |
-
-
+| `to_address` | [string](#string) | | |
-
-### EventAttributeUpdate
-EventAttributeUpdate event emitted when attribute is updated
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `original_value` | [string](#string) | | |
-| `original_type` | [string](#string) | | |
-| `update_value` | [string](#string) | | |
-| `update_type` | [string](#string) | | |
-| `account` | [string](#string) | | |
-| `owner` | [string](#string) | | |
+### MsgOptOutResponse
+MsgOptOutResponse defines the Msg/OptOut response type.
-
+
-### Params
-Params defines the set of params for the attribute module.
+### MsgUpdateAutoResponses
+MsgUpdateAutoResponses represents a message for updating quarantine auto-responses for a receiving address.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `max_value_length` | [uint32](#uint32) | | maximum length of data to allow in an attribute value |
+| `to_address` | [string](#string) | | to_address is the quarantined address that would be accepting or declining funds. |
+| `updates` | [AutoResponseUpdate](#cosmos-quarantine-v1beta1-AutoResponseUpdate) | repeated | updates is the list of addresses and auto-responses that should be updated for the to_address. |
-
+
+
+
+### MsgUpdateAutoResponsesResponse
+MsgUpdateAutoResponsesResponse defines the Msg/UpdateAutoResponse response type.
-
-### AttributeType
-AttributeType defines the type of the data stored in the attribute value
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| ATTRIBUTE_TYPE_UNSPECIFIED | 0 | ATTRIBUTE_TYPE_UNSPECIFIED defines an unknown/invalid type |
-| ATTRIBUTE_TYPE_UUID | 1 | ATTRIBUTE_TYPE_UUID defines an attribute value that contains a string value representation of a V4 uuid |
-| ATTRIBUTE_TYPE_JSON | 2 | ATTRIBUTE_TYPE_JSON defines an attribute value that contains a byte string containing json data |
-| ATTRIBUTE_TYPE_STRING | 3 | ATTRIBUTE_TYPE_STRING defines an attribute value that contains a generic string value |
-| ATTRIBUTE_TYPE_URI | 4 | ATTRIBUTE_TYPE_URI defines an attribute value that contains a URI |
-| ATTRIBUTE_TYPE_INT | 5 | ATTRIBUTE_TYPE_INT defines an attribute value that contains an integer (cast as int64) |
-| ATTRIBUTE_TYPE_FLOAT | 6 | ATTRIBUTE_TYPE_FLOAT defines an attribute value that contains a float |
-| ATTRIBUTE_TYPE_PROTO | 7 | ATTRIBUTE_TYPE_PROTO defines an attribute value that contains a serialized proto value in bytes |
-| ATTRIBUTE_TYPE_BYTES | 8 | ATTRIBUTE_TYPE_BYTES defines an attribute value that contains an untyped array of bytes |
+
+
+
+
+### Msg
+Query defines the quarantine gRPC msg service.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `OptIn` | [MsgOptIn](#cosmos-quarantine-v1beta1-MsgOptIn) | [MsgOptInResponse](#cosmos-quarantine-v1beta1-MsgOptInResponse) | OptIn defines a method for opting in to account quarantine. Funds sent to a quarantined account must be approved before they can be received. |
+| `OptOut` | [MsgOptOut](#cosmos-quarantine-v1beta1-MsgOptOut) | [MsgOptOutResponse](#cosmos-quarantine-v1beta1-MsgOptOutResponse) | OptOut defines a method for opting out of account quarantine. Any pending funds for the account must still be accepted, but new sends will no longer be quarantined. |
+| `Accept` | [MsgAccept](#cosmos-quarantine-v1beta1-MsgAccept) | [MsgAcceptResponse](#cosmos-quarantine-v1beta1-MsgAcceptResponse) | Accept defines a method for accepting quarantined funds. |
+| `Decline` | [MsgDecline](#cosmos-quarantine-v1beta1-MsgDecline) | [MsgDeclineResponse](#cosmos-quarantine-v1beta1-MsgDeclineResponse) | Decline defines a method for declining quarantined funds. |
+| `UpdateAutoResponses` | [MsgUpdateAutoResponses](#cosmos-quarantine-v1beta1-MsgUpdateAutoResponses) | [MsgUpdateAutoResponsesResponse](#cosmos-quarantine-v1beta1-MsgUpdateAutoResponsesResponse) | UpdateAutoResponses defines a method for updating the auto-response settings for a quarantined address. |
+
-
+
Top
-## provenance/attribute/v1/genesis.proto
+## cosmos/quarantine/v1beta1/events.proto
-
+
-### GenesisState
-GenesisState defines the attribute module's genesis state.
+### EventFundsQuarantined
+EventFundsQuarantined is an event emitted when funds are quarantined.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.attribute.v1.Params) | | params defines all the parameters of the module. |
-| `attributes` | [Attribute](#provenance.attribute.v1.Attribute) | repeated | deposits defines all the deposits present at genesis. |
+| `to_address` | [string](#string) | | |
+| `coins` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
-
-
+
-
+### EventFundsReleased
+EventFundsReleased is an event emitted when quarantined funds are accepted and released.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `to_address` | [string](#string) | | |
+| `coins` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
-
-Top
-## provenance/attribute/v1/query.proto
-
+
-### QueryAccountDataRequest
-QueryAccountDataRequest is the request type for the Query/AccountData method.
+### EventOptIn
+EventOptIn is an event emitted when an address opts into quarantine.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address of the account to get the data for |
+| `to_address` | [string](#string) | | |
-
+
-### QueryAccountDataResponse
-QueryAccountDataResponse is the response type for the Query/AccountData method.
+### EventOptOut
+EventOptOut is an event emitted when an address opts out of quarantine.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `value` | [string](#string) | | value is the accountdata attribute value for the requested account. |
+| `to_address` | [string](#string) | | |
+
-
+
-### QueryAttributeAccountsRequest
-QueryAttributeAccountsRequest is the request type for the Query/AttributeAccounts method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `attribute_name` | [string](#string) | | name is the attribute name to query for |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+
+Top
+## cosmos/quarantine/v1beta1/query.proto
-
+
-### QueryAttributeAccountsResponse
-QueryAttributeAccountsResponse is the response type for the Query/AttributeAccounts method.
+### QueryAutoResponsesRequest
+QueryAutoResponsesRequest defines the RPC request for getting auto-response settings for an address.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `accounts` | [string](#string) | repeated | list of account addresses that have attributes of request name |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `to_address` | [string](#string) | | to_address is the quarantined account to get info on. |
+| `from_address` | [string](#string) | | from_address is an optional sender address to limit results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### QueryAttributeRequest
-QueryAttributeRequest is the request type for the Query/Attribute method.
+### QueryAutoResponsesResponse
+QueryAutoResponsesResponse defines the RPC response of a AutoResponses query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account defines the address to query for. |
-| `name` | [string](#string) | | name is the attribute name to query for |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `auto_responses` | [AutoResponseEntry](#cosmos-quarantine-v1beta1-AutoResponseEntry) | repeated | auto_responses are the auto-response entries from the provided query. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines the pagination parameters of the response. |
-
+
-### QueryAttributeResponse
-QueryAttributeResponse is the response type for the Query/Attribute method.
+### QueryIsQuarantinedRequest
+QueryIsQuarantinedRequest defines the RPC request for checking if an account has opted into quarantine.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to. |
-| `attributes` | [Attribute](#provenance.attribute.v1.Attribute) | repeated | a list of attribute values |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `to_address` | [string](#string) | | to_address is the address to check. |
-
+
-### QueryAttributesRequest
-QueryAttributesRequest is the request type for the Query/Attributes method.
+### QueryIsQuarantinedResponse
+QueryIsQuarantinedResponse defines the RPC response of an IsQuarantined query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account defines the address to query for. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `is_quarantined` | [bool](#bool) | | is_quarantined is true if the to_address has opted into quarantine. |
-
+
-### QueryAttributesResponse
-QueryAttributesResponse is the response type for the Query/Attributes method.
+### QueryQuarantinedFundsRequest
+QueryQuarantinedFundsRequest defines the RPC request for looking up quarantined funds.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to= |
-| `attributes` | [Attribute](#provenance.attribute.v1.Attribute) | repeated | a list of attribute values |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `to_address` | [string](#string) | | to_address is the intended recipient of the coins that have been quarantined. |
+| `from_address` | [string](#string) | | from_address is the sender of the coins. If provided, a to_address must also be provided. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### QueryParamsRequest
-QueryParamsRequest is the request type for the Query/Params RPC method.
+### QueryQuarantinedFundsResponse
+QueryQuarantinedFundsResponse defines the RPC response of a QuarantinedFunds query.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `quarantinedFunds` | [QuarantinedFunds](#cosmos-quarantine-v1beta1-QuarantinedFunds) | repeated | quarantinedFunds is info about coins sitting in quarantine. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines the pagination parameters of the response. |
-
-### QueryParamsResponse
-QueryParamsResponse is the response type for the Query/Params RPC method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.attribute.v1.Params) | | params defines the parameters of the module. |
+
+
+### Query
+Query defines the quarantine gRPC query service.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `IsQuarantined` | [QueryIsQuarantinedRequest](#cosmos-quarantine-v1beta1-QueryIsQuarantinedRequest) | [QueryIsQuarantinedResponse](#cosmos-quarantine-v1beta1-QueryIsQuarantinedResponse) | IsQuarantined checks if an account has opted into quarantine. |
+| `QuarantinedFunds` | [QueryQuarantinedFundsRequest](#cosmos-quarantine-v1beta1-QueryQuarantinedFundsRequest) | [QueryQuarantinedFundsResponse](#cosmos-quarantine-v1beta1-QueryQuarantinedFundsResponse) | QuarantinedFunds gets information about funds that have been quarantined.
If both a to_address and from_address are provided, any such quarantined funds will be returned regardless of whether they've been declined. If only a to_address is provided, the unaccepted and undeclined funds waiting on a response from to_address will be returned. If neither a to_address nor from_address is provided, all non-declined quarantined funds for any address will be returned. The request is invalid if only a from_address is provided. |
+| `AutoResponses` | [QueryAutoResponsesRequest](#cosmos-quarantine-v1beta1-QueryAutoResponsesRequest) | [QueryAutoResponsesResponse](#cosmos-quarantine-v1beta1-QueryAutoResponsesResponse) | AutoResponses gets the auto-response settings for a quarantined account.
The to_address is required. If a from_address is provided only the auto response for that from_address will be returned. If no from_address is provided, all auto-response settings for the given to_address will be returned. |
+
-
-### QueryScanRequest
-QueryScanRequest is the request type for the Query/Scan method.
+
+Top
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account defines the address to query for. |
-| `suffix` | [string](#string) | | name defines the partial attribute name to search for base on names being in RDNS format. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+## cosmos/quarantine/v1beta1/quarantine.proto
+
+### AutoResponseEntry
+AutoResponseEntry defines the auto response to one address from another.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `to_address` | [string](#string) | | to_address is the receiving address. |
+| `from_address` | [string](#string) | | from_address is the sending address. |
+| `response` | [AutoResponse](#cosmos-quarantine-v1beta1-AutoResponse) | | response is the auto-response setting for these two addresses. |
-### QueryScanResponse
-QueryScanResponse is the response type for the Query/Scan method.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to= |
-| `attributes` | [Attribute](#provenance.attribute.v1.Attribute) | repeated | a list of attribute values |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+
+### AutoResponseUpdate
+AutoResponseUpdate defines a quarantine auto response update that should be applied.
-
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `from_address` | [string](#string) | | from_address is the address that funds would be coming from. |
+| `response` | [AutoResponse](#cosmos-quarantine-v1beta1-AutoResponse) | | response is the automatic action to take on funds sent from from_address. Provide AUTO_RESPONSE_UNSPECIFIED to turn off an auto-response. |
-
-
-### Query
-Query defines the gRPC querier service for attribute module.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [QueryParamsRequest](#provenance.attribute.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.attribute.v1.QueryParamsResponse) | Params queries params of the attribute module. | GET|/provenance/attribute/v1/params|
-| `Attribute` | [QueryAttributeRequest](#provenance.attribute.v1.QueryAttributeRequest) | [QueryAttributeResponse](#provenance.attribute.v1.QueryAttributeResponse) | Attribute queries attributes on a given account (address) for one (or more) with the given name | GET|/provenance/attribute/v1/attribute/{account}/{name}|
-| `Attributes` | [QueryAttributesRequest](#provenance.attribute.v1.QueryAttributesRequest) | [QueryAttributesResponse](#provenance.attribute.v1.QueryAttributesResponse) | Attributes queries attributes on a given account (address) for any defined attributes | GET|/provenance/attribute/v1/attributes/{account}|
-| `Scan` | [QueryScanRequest](#provenance.attribute.v1.QueryScanRequest) | [QueryScanResponse](#provenance.attribute.v1.QueryScanResponse) | Scan queries attributes on a given account (address) for any that match the provided suffix | GET|/provenance/attribute/v1/attribute/{account}/scan/{suffix}|
-| `AttributeAccounts` | [QueryAttributeAccountsRequest](#provenance.attribute.v1.QueryAttributeAccountsRequest) | [QueryAttributeAccountsResponse](#provenance.attribute.v1.QueryAttributeAccountsResponse) | AttributeAccounts queries accounts on a given attribute name | GET|/provenance/attribute/v1/accounts/{attribute_name}|
-| `AccountData` | [QueryAccountDataRequest](#provenance.attribute.v1.QueryAccountDataRequest) | [QueryAccountDataResponse](#provenance.attribute.v1.QueryAccountDataResponse) | AccountData returns the accountdata for a specified account. | GET|/provenance/attribute/v1/accountdata/{account}|
-
+
+### QuarantineRecord
+QuarantineRecord defines information regarding quarantined funds that is stored in state.
-
-Top
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `unaccepted_from_addresses` | [bytes](#bytes) | repeated | unaccepted_from_addresses are the senders that have not been part of an accept yet for these coins. |
+| `accepted_from_addresses` | [bytes](#bytes) | repeated | accepted_from_addresses are the senders that have already been part of an accept for these coins. |
+| `coins` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | coins is the amount that has been quarantined. |
+| `declined` | [bool](#bool) | | declined is whether these funds have been declined. |
-## provenance/attribute/v1/tx.proto
-
-### MsgAddAttributeRequest
-MsgAddAttributeRequest defines an sdk.Msg type that is used to add a new attribute to an account.
-Attributes may only be set in an account by the account that the attribute name resolves to.
+
+
+
+### QuarantineRecordSuffixIndex
+QuarantineRecordSuffixIndex defines a list of record suffixes that can be stored in state and used as an index.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `value` | [bytes](#bytes) | | The attribute value. |
-| `attribute_type` | [AttributeType](#provenance.attribute.v1.AttributeType) | | The attribute value type. |
-| `account` | [string](#string) | | The account to add the attribute to. |
-| `owner` | [string](#string) | | The address that the name must resolve to. |
-| `expiration_date` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that an attribute will expire. |
+| `record_suffixes` | [bytes](#bytes) | repeated | |
-
+
-### MsgAddAttributeResponse
-MsgAddAttributeResponse defines the Msg/AddAttribute response type.
+### QuarantinedFunds
+QuarantinedFunds defines structure that represents coins that have been quarantined.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `to_address` | [string](#string) | | to_address is the intended recipient of the coins that have been quarantined. |
+| `unaccepted_from_addresses` | [string](#string) | repeated | unaccepted_from_addresses are the senders that have not been part of an accept yet for these coins. |
+| `coins` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | coins is the amount currently in quarantined for the two addresses. |
+| `declined` | [bool](#bool) | | declined is true if these funds were previously declined. |
-
-### MsgDeleteAttributeRequest
-MsgDeleteAttributeRequest defines a message to delete an attribute from an account
-Attributes may only be removed from an account by the account that the attribute name resolves to.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `account` | [string](#string) | | The account to add the attribute to. |
-| `owner` | [string](#string) | | The address that the name must resolve to. |
+
+### AutoResponse
+AutoResponse enumerates the quarantine auto-response options.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `AUTO_RESPONSE_UNSPECIFIED` | `0` | AUTO_RESPONSE_UNSPECIFIED defines that an automatic response has not been specified. This means that no automatic action should be taken, i.e. this auto-response is off, and default quarantine behavior is used. |
+| `AUTO_RESPONSE_ACCEPT` | `1` | AUTO_RESPONSE_ACCEPT defines that sends should be automatically accepted, bypassing quarantine. |
+| `AUTO_RESPONSE_DECLINE` | `2` | AUTO_RESPONSE_DECLINE defines that sends should be automatically declined. |
+
+
-
+
-### MsgDeleteAttributeResponse
-MsgDeleteAttributeResponse defines the Msg/DeleteAttribute response type.
+
+Top
+## cosmos/quarantine/v1beta1/genesis.proto
-
+
-### MsgDeleteDistinctAttributeRequest
-MsgDeleteDistinctAttributeRequest defines a message to delete an attribute with matching name, value, and type from
-an account. Attributes may only be removed from an account by the account that the attribute name resolves to.
+### GenesisState
+GenesisState defines the quarantine module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `value` | [bytes](#bytes) | | The attribute value. |
-| `account` | [string](#string) | | The account to add the attribute to. |
-| `owner` | [string](#string) | | The address that the name must resolve to. |
+| `quarantined_addresses` | [string](#string) | repeated | quarantined_addresses defines account addresses that are opted into quarantine. |
+| `auto_responses` | [AutoResponseEntry](#cosmos-quarantine-v1beta1-AutoResponseEntry) | repeated | auto_responses defines the quarantine auto-responses for addresses. |
+| `quarantined_funds` | [QuarantinedFunds](#cosmos-quarantine-v1beta1-QuarantinedFunds) | repeated | quarantined_funds defines funds that are quarantined. |
+
+
+
-
+
-### MsgDeleteDistinctAttributeResponse
-MsgDeleteDistinctAttributeResponse defines the Msg/DeleteDistinctAttribute response type.
+
+
+Top
+## cosmos/sanction/v1beta1/tx.proto
-
-### MsgSetAccountDataRequest
-MsgSetAccountDataRequest defines a message to set an account's accountdata attribute.
+
+
+### MsgSanction
+MsgSanction represents a message for the governance operation of sanctioning addresses.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `value` | [string](#string) | | |
-| `account` | [string](#string) | | |
+| `addresses` | [string](#string) | repeated | addresses are the addresses to sanction. |
+| `authority` | [string](#string) | | authority is the address of the account with the authority to enact sanctions (most likely the governance module account). |
-
+
-### MsgSetAccountDataResponse
-MsgSetAccountDataResponse defines the Msg/SetAccountData response type.
+### MsgSanctionResponse
+MsgOptInResponse defines the Msg/Sanction response type.
-
+
-### MsgUpdateAttributeExpirationRequest
-MsgUpdateAttributeExpirationRequest defines an sdk.Msg type that is used to update an existing attribute's expiration
-date
+### MsgUnsanction
+MsgSanction represents a message for the governance operation of unsanctioning addresses.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `value` | [bytes](#bytes) | | The original attribute value. |
-| `expiration_date` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that an attribute will expire. |
-| `account` | [string](#string) | | The account to add the attribute to. |
-| `owner` | [string](#string) | | The address that the name must resolve to. |
+| `addresses` | [string](#string) | repeated | addresses are the addresses to unsanction. |
+| `authority` | [string](#string) | | authority is the address of the account with the authority to retract sanctions (most likely the governance module account). |
-
+
-### MsgUpdateAttributeExpirationResponse
-MsgUpdateAttributeExpirationResponse defines the Msg/Vote response type.
+### MsgUnsanctionResponse
+MsgOptInResponse defines the Msg/Unsanction response type.
-
+
-### MsgUpdateAttributeRequest
-MsgUpdateAttributeRequest defines an sdk.Msg type that is used to update an existing attribute to an account.
-Attributes may only be set in an account by the account that the attribute name resolves to.
+### MsgUpdateParams
+MsgUpdateParams represents a message for the governance operation of updating the sanction module params.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The attribute name. |
-| `original_value` | [bytes](#bytes) | | The original attribute value. |
-| `update_value` | [bytes](#bytes) | | The update attribute value. |
-| `original_attribute_type` | [AttributeType](#provenance.attribute.v1.AttributeType) | | The original attribute value type. |
-| `update_attribute_type` | [AttributeType](#provenance.attribute.v1.AttributeType) | | The update attribute value type. |
-| `account` | [string](#string) | | The account to add the attribute to. |
-| `owner` | [string](#string) | | The address that the name must resolve to. |
+| `params` | [Params](#cosmos-sanction-v1beta1-Params) | | params are the sanction module parameters. |
+| `authority` | [string](#string) | | authority is the address of the account with the authority to update params (most likely the governance module account). |
-
+
-### MsgUpdateAttributeResponse
-MsgUpdateAttributeResponse defines the Msg/UpdateAttribute response type.
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse defined the Msg/UpdateParams response type.
@@ -1433,91 +1465,92 @@ MsgUpdateAttributeResponse defines the Msg/UpdateAttribute response type.
-
+
### Msg
-Msg defines the attribute module Msg service.
+Msg defines the sanction Msg service.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `AddAttribute` | [MsgAddAttributeRequest](#provenance.attribute.v1.MsgAddAttributeRequest) | [MsgAddAttributeResponse](#provenance.attribute.v1.MsgAddAttributeResponse) | AddAttribute defines a method to verify a particular invariance. | |
-| `UpdateAttribute` | [MsgUpdateAttributeRequest](#provenance.attribute.v1.MsgUpdateAttributeRequest) | [MsgUpdateAttributeResponse](#provenance.attribute.v1.MsgUpdateAttributeResponse) | UpdateAttribute defines a method to verify a particular invariance. | |
-| `UpdateAttributeExpiration` | [MsgUpdateAttributeExpirationRequest](#provenance.attribute.v1.MsgUpdateAttributeExpirationRequest) | [MsgUpdateAttributeExpirationResponse](#provenance.attribute.v1.MsgUpdateAttributeExpirationResponse) | UpdateAttributeExpiration defines a method to verify a particular invariance. | |
-| `DeleteAttribute` | [MsgDeleteAttributeRequest](#provenance.attribute.v1.MsgDeleteAttributeRequest) | [MsgDeleteAttributeResponse](#provenance.attribute.v1.MsgDeleteAttributeResponse) | DeleteAttribute defines a method to verify a particular invariance. | |
-| `DeleteDistinctAttribute` | [MsgDeleteDistinctAttributeRequest](#provenance.attribute.v1.MsgDeleteDistinctAttributeRequest) | [MsgDeleteDistinctAttributeResponse](#provenance.attribute.v1.MsgDeleteDistinctAttributeResponse) | DeleteDistinctAttribute defines a method to verify a particular invariance. | |
-| `SetAccountData` | [MsgSetAccountDataRequest](#provenance.attribute.v1.MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance.attribute.v1.MsgSetAccountDataResponse) | SetAccountData defines a method for setting/updating an account's accountdata attribute. | |
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Sanction` | [MsgSanction](#cosmos-sanction-v1beta1-MsgSanction) | [MsgSanctionResponse](#cosmos-sanction-v1beta1-MsgSanctionResponse) | Sanction is a governance operation for sanctioning addresses. |
+| `Unsanction` | [MsgUnsanction](#cosmos-sanction-v1beta1-MsgUnsanction) | [MsgUnsanctionResponse](#cosmos-sanction-v1beta1-MsgUnsanctionResponse) | Unsanction is a governance operation for unsanctioning addresses. |
+| `UpdateParams` | [MsgUpdateParams](#cosmos-sanction-v1beta1-MsgUpdateParams) | [MsgUpdateParamsResponse](#cosmos-sanction-v1beta1-MsgUpdateParamsResponse) | UpdateParams is a governance operation for updating the sanction module params. |
-
+
Top
-## provenance/exchange/v1/commitments.proto
+## cosmos/sanction/v1beta1/events.proto
-
+
-### AccountAmount
-AccountAmount associates an account with a coins amount.
+### EventAddressSanctioned
+EventAddressSanctioned is an event emitted when an address is sanctioned.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address string of the account associated with the amount. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the funds associated with the address. |
+| `address` | [string](#string) | | |
-
+
-### Commitment
-Commitment contains information on committed funds.
+### EventAddressUnsanctioned
+EventAddressUnsanctioned is an event emitted when an address is unsanctioned.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address string with the committed funds. |
-| `market_id` | [uint32](#uint32) | | market_id is the numeric identifier of the market the funds are committed to. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the funds that have been committed by the account to the market. |
+| `address` | [string](#string) | | |
-
+
-### MarketAmount
-MarketAmount associates a market with a coins amount.
+### EventParamsUpdated
+EventParamsUpdated is an event emitted when the sanction module params are updated.
+
+
+
+
+
+
+
+
+### EventTempAddressSanctioned
+EventTempAddressSanctioned is an event emitted when an address is temporarily sanctioned.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numeric identifier the amount has been committed to. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the funds associated with the address. |
+| `address` | [string](#string) | | |
-
+
-### NetAssetPrice
-NetAssetPrice is an association of assets and price used to record the value of things.
-It is related to the NetAssetValue message from the x/marker module, and is therefore often referred to as "a NAV".
+### EventTempAddressUnsanctioned
+EventTempAddressUnsanctioned is an event emitted when an address is temporarily unsanctioned.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `assets` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | assets is the volume and denom that has been bought or sold. |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is what was paid for the assets. |
+| `address` | [string](#string) | | |
@@ -1533,1682 +1566,1635 @@ It is related to the NetAssetValue message from the x/marker module, and is ther
-
+
Top
-## provenance/exchange/v1/events.proto
+## cosmos/sanction/v1beta1/query.proto
-
+
-### EventCommitmentReleased
-EventCommitmentReleased is an event emitted when funds are released from their commitment.
+### QueryIsSanctionedRequest
+QueryIsSanctionedRequest defines the RPC request for checking if an account is sanctioned.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address string of the account. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `amount` | [string](#string) | | amount is the coins string of the funds that were released from commitment. |
-| `tag` | [string](#string) | | tag is the string provided in the message causing this event. |
+| `address` | [string](#string) | | |
-
+
-### EventFundsCommitted
-EventFundsCommitted is an event emitted when funds are committed to a market.
+### QueryIsSanctionedResponse
+QueryIsSanctionedResponse defines the RPC response of an IsSanctioned query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address string of the account. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `amount` | [string](#string) | | amount is the coins string of the newly committed funds. |
-| `tag` | [string](#string) | | tag is the string provided in the message causing this event. |
-
+| `is_sanctioned` | [bool](#bool) | | is_sanctioned is true if the address is sanctioned. |
-
-
-### EventMarketCommitmentsDisabled
-EventMarketCommitmentsDisabled is an event emitted when a market's accepting_commitments option is disabled.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_commitments option. |
+### QueryParamsRequest
+QueryParamsRequest defines the RPC request for getting the sanction module params.
-
+
-### EventMarketCommitmentsEnabled
-EventMarketCommitmentsEnabled is an event emitted when a market's accepting_commitments option is enabled.
+### QueryParamsResponse
+QueryParamsResponse defines the RPC response of a Params query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_commitments option. |
+| `params` | [Params](#cosmos-sanction-v1beta1-Params) | | params are the sanction module parameters. |
-
+
-### EventMarketCreated
-EventMarketCreated is an event emitted when a market has been created.
+### QuerySanctionedAddressesRequest
+QuerySanctionedAddressesRequest defines the RPC request for listing sanctioned accounts.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarketDetailsUpdated
-EventMarketDetailsUpdated is an event emitted when a market's details are updated.
+### QuerySanctionedAddressesResponse
+QuerySanctionedAddressesResponse defines the RPC response of a SanctionedAddresses query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the details. |
+| `addresses` | [string](#string) | repeated | addresses is the list of sanctioned account addresses. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines the pagination in the response. |
-
+
-### EventMarketDisabled
-EventMarketDisabled is an event emitted when a market is disabled.
-Deprecated: This event is no longer used. It is replaced with EventMarketOrdersDisabled.
+### QueryTemporaryEntriesRequest
+QueryTemporaryEntriesRequest defines the RPC request for listing temporary sanction/unsanction entries.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that disabled the market. |
+| `address` | [string](#string) | | address is an optional address to restrict results to. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarketEnabled
-EventMarketEnabled is an event emitted when a market is enabled.
-Deprecated: This event is no longer used. It is replaced with EventMarketOrdersEnabled.
+### QueryTemporaryEntriesResponse
+QueryTemporaryEntriesResponse defines the RPC response of a TemporaryEntries query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that enabled the market. |
+| `entries` | [TemporaryEntry](#cosmos-sanction-v1beta1-TemporaryEntry) | repeated | |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines the pagination in the response. |
+
-
+
-### EventMarketFeesUpdated
-EventMarketFeesUpdated is an event emitted when a market's fees have been updated.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+
+
+### Query
+Query defines the gRPC querier service.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `IsSanctioned` | [QueryIsSanctionedRequest](#cosmos-sanction-v1beta1-QueryIsSanctionedRequest) | [QueryIsSanctionedResponse](#cosmos-sanction-v1beta1-QueryIsSanctionedResponse) | IsSanctioned checks if an account has been sanctioned. |
+| `SanctionedAddresses` | [QuerySanctionedAddressesRequest](#cosmos-sanction-v1beta1-QuerySanctionedAddressesRequest) | [QuerySanctionedAddressesResponse](#cosmos-sanction-v1beta1-QuerySanctionedAddressesResponse) | SanctionedAddresses returns a list of sanctioned addresses. |
+| `TemporaryEntries` | [QueryTemporaryEntriesRequest](#cosmos-sanction-v1beta1-QueryTemporaryEntriesRequest) | [QueryTemporaryEntriesResponse](#cosmos-sanction-v1beta1-QueryTemporaryEntriesResponse) | TemporaryEntries returns temporary sanction/unsanction info. |
+| `Params` | [QueryParamsRequest](#cosmos-sanction-v1beta1-QueryParamsRequest) | [QueryParamsResponse](#cosmos-sanction-v1beta1-QueryParamsResponse) | Params returns the sanction module's params. |
+
+
+Top
+## cosmos/sanction/v1beta1/genesis.proto
-
-### EventMarketIntermediaryDenomUpdated
-EventMarketIntermediaryDenomUpdated is an event emitted when a market updates its
-commitment_settlement_intermediary_denom field.
+
+
+
+### GenesisState
+GenesisState defines the sanction module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the intermediary denom. |
+| `params` | [Params](#cosmos-sanction-v1beta1-Params) | | params are the sanction module parameters. |
+| `sanctioned_addresses` | [string](#string) | repeated | sanctioned_addresses defines account addresses that are sanctioned. |
+| `temporary_entries` | [TemporaryEntry](#cosmos-sanction-v1beta1-TemporaryEntry) | repeated | temporary_entries defines the temporary entries associated with on-going governance proposals. |
+
-
+
-### EventMarketOrdersDisabled
-EventMarketOrdersEnabled is an event emitted when a market disables order creation.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_orders option. |
+
+Top
+## cosmos/sanction/v1beta1/sanction.proto
-
+
-### EventMarketOrdersEnabled
-EventMarketOrdersEnabled is an event emitted when a market enables order creation.
+### Params
+Params defines the configurable parameters of the sanction module.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_orders option. |
+| `immediate_sanction_min_deposit` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | immediate_sanction_min_deposit is the minimum deposit for a sanction to happen immediately. If this is zero, immediate sanctioning is not available. Otherwise, if a sanction governance proposal is issued with a deposit at least this large, a temporary sanction will be immediately issued that will expire when voting ends on the governance proposal. |
+| `immediate_unsanction_min_deposit` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | immediate_unsanction_min_deposit is the minimum deposit for an unsanction to happen immediately. If this is zero, immediate unsanctioning is not available. Otherwise, if an unsanction governance proposal is issued with a deposit at least this large, a temporary unsanction will be immediately issued that will expire when voting ends on the governance proposal. |
-
+
-### EventMarketPermissionsUpdated
-EventMarketPermissionsUpdated is an event emitted when a market's permissions are updated.
+### TemporaryEntry
+TemporaryEntry defines the information involved in a temporary sanction or unsanction.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the permissions. |
-
-
+| `address` | [string](#string) | | address is the address of this temporary entry. |
+| `proposal_id` | [uint64](#uint64) | | proposal_id is the governance proposal id associated with this temporary entry. |
+| `status` | [TempStatus](#cosmos-sanction-v1beta1-TempStatus) | | status is whether the entry is a sanction or unsanction. |
-
-
-### EventMarketReqAttrUpdated
-EventMarketReqAttrUpdated is an event emitted when a market's required attributes are updated.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the required attributes. |
+
+### TempStatus
+TempStatus is whether a temporary entry is a sanction or unsanction.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `TEMP_STATUS_UNSPECIFIED` | `0` | TEMP_STATUS_UNSPECIFIED represents and unspecified status value. |
+| `TEMP_STATUS_SANCTIONED` | `1` | TEMP_STATUS_SANCTIONED indicates a sanction is in place. |
+| `TEMP_STATUS_UNSANCTIONED` | `2` | TEMP_STATUS_UNSANCTIONED indicates an unsanctioned is in place. |
+
-
+
-### EventMarketUserSettleDisabled
-EventMarketUserSettleDisabled is an event emitted when a market's user_settle option is disabled.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the user_settle option. |
+
+Top
+## provenance/exchange/v1/tx.proto
+
-
+### MsgAcceptPaymentRequest
+MsgAcceptPaymentRequest is a request message for the AcceptPayment endpoint.
-### EventMarketUserSettleEnabled
-EventMarketUserSettleEnabled is an event emitted when a market's user_settle option is enabled.
+The signer is the payment.target, but we can't define that using the cosmos.msg.v1.signer option.
+So signers for this msg are defined in code using a custom get-signers function.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `updated_by` | [string](#string) | | updated_by is the account that updated the user_settle option. |
-
+| `payment` | [Payment](#provenance-exchange-v1-Payment) | | payment is the details of the payment to accept. |
-
-### EventMarketWithdraw
-EventMarketWithdraw is an event emitted when a withdrawal of a market's collected fees is made.
+
-
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `amount` | [string](#string) | | amount is the coins amount string of funds withdrawn from the market account. |
-| `destination` | [string](#string) | | destination is the account that received the funds. |
-| `withdrawn_by` | [string](#string) | | withdrawn_by is the account that requested the withdrawal. |
+### MsgAcceptPaymentResponse
+MsgAcceptPaymentResponse is a response message for the AcceptPayment endpoint.
-
+
-### EventOrderCancelled
-EventOrderCancelled is an event emitted when an order is cancelled.
+### MsgCancelOrderRequest
+MsgCancelOrderRequest is a request message for the CancelOrder endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order cancelled. |
-| `cancelled_by` | [string](#string) | | cancelled_by is the account that triggered the cancellation of the order. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `external_id` | [string](#string) | | external_id is the order's external id. |
-
-
+| `signer` | [string](#string) | | signer is the account requesting the order cancellation. It must be either the order owner (e.g. the buyer or seller), the governance module account address, or an account with cancel permission with the market that the order is in. |
+| `order_id` | [uint64](#uint64) | | order_id is the id of the order to cancel. |
-
-### EventOrderCreated
-EventOrderCreated is an event emitted when an order is created.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order created. |
-| `order_type` | [string](#string) | | order_type is the type of order, e.g. "ask" or "bid". |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `external_id` | [string](#string) | | external_id is the order's external id. |
+### MsgCancelOrderResponse
+MsgCancelOrderResponse is a response message for the CancelOrder endpoint.
-
+
-### EventOrderExternalIDUpdated
-EventOrderExternalIDUpdated is an event emitted when an order's external id is updated.
+### MsgCancelPaymentsRequest
+MsgCancelPaymentsRequest is a request message for the CancelPayments endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order partially filled. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `external_id` | [string](#string) | | external_id is the order's new external id. |
-
-
+| `source` | [string](#string) | | source is the account that wishes to cancel some of their payments. |
+| `external_ids` | [string](#string) | repeated | external_ids is all of the external ids of the payments to cancel. |
-
-### EventOrderFilled
-EventOrderFilled is an event emitted when an order has been filled in full.
-This event is also used for orders that were previously partially filled, but have now been filled in full.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order filled. |
-| `assets` | [string](#string) | | assets is the coins amount string of assets bought/sold for this order. |
-| `price` | [string](#string) | | price is the coins amount string of the price payed/received for this order. |
-| `fees` | [string](#string) | | fees is the coins amount string of settlement fees paid with this order. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `external_id` | [string](#string) | | external_id is the order's external id. |
+### MsgCancelPaymentsResponse
+MsgCancelPaymentsResponse is a response message for the CancelPayments endpoint.
-
+
-### EventOrderPartiallyFilled
-EventOrderPartiallyFilled is an event emitted when an order filled in part and still has more left to fill.
+### MsgChangePaymentTargetRequest
+MsgChangePaymentTargetRequest is a request message for the ChangePaymentTarget endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order partially filled. |
-| `assets` | [string](#string) | | assets is the coins amount string of assets that were filled and removed from the order. |
-| `price` | [string](#string) | | price is the coins amount string of the price payed/received for this order. For ask orders, this might be more than the amount that was removed from the order's price. |
-| `fees` | [string](#string) | | fees is the coins amount string of settlement fees paid with this partial order. For ask orders, this might be more than the amount that was removed from the order's settlement fees. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-| `external_id` | [string](#string) | | external_id is the order's external id. |
+| `source` | [string](#string) | | source is the account that wishes to update the target of one of their payments. |
+| `external_id` | [string](#string) | | external_id is the external id of the payment to update. |
+| `new_target` | [string](#string) | | new_target is the new target account of the payment. |
-
+
-### EventParamsUpdated
-EventParamsUpdated is an event emitted when the exchange module's params have been updated.
+### MsgChangePaymentTargetResponse
+MsgChangePaymentTargetResponse is a response message for the ChangePaymentTarget endpoint.
-
+
-### EventPaymentAccepted
-EventPaymentAccepted is an event emitted when a payment is accepted.
+### MsgCommitFundsRequest
+MsgCommitFundsRequest is a request message for the CommitFunds endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that created the Payment. |
-| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
-| `target` | [string](#string) | | target is the account that accepted the Payment. |
-| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
-
-
+| `account` | [string](#string) | | account is the address of the account with the funds being committed. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market the funds will be committed to. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the funds being committed to the market. |
+| `creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | creation_fee is the fee that is being paid to create this commitment. |
+| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-committed event. Max length is 100 characters. |
-
-### EventPaymentCancelled
-EventPaymentCancelled is an event emitted when a payment is cancelled (by the source).
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that cancelled (and created) the Payment. |
-| `target` | [string](#string) | | target is the account that could have accepted the Payment. |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
+### MsgCommitFundsResponse
+MsgCommitFundsResponse is a response message for the CommitFunds endpoint.
-
+
-### EventPaymentCreated
-EventPaymentCreated is an event emitted when a payment is created.
+### MsgCreateAskRequest
+MsgCreateAskRequest is a request message for the CreateAsk endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that created the Payment. |
-| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
-| `target` | [string](#string) | | target is the account that can accept the Payment. |
-| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
+| `ask_order` | [AskOrder](#provenance-exchange-v1-AskOrder) | | ask_order is the details of the order being created. |
+| `order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | order_creation_fee is the fee that is being paid to create this order. |
-
+
-### EventPaymentRejected
-EventPaymentRejected is an event emitted when a payment is rejected (by the target).
+### MsgCreateAskResponse
+MsgCreateAskResponse is a response message for the CreateAsk endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that created the Payment. |
-| `target` | [string](#string) | | target is the account that rejected the Payment. |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
+| `order_id` | [uint64](#uint64) | | order_id is the id of the order created. |
-
+
-### EventPaymentUpdated
-EventPaymentUpdated is an event emitted when a payment is updated.
+### MsgCreateBidRequest
+MsgCreateBidRequest is a request message for the CreateBid endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that updated (and previously created) the Payment. |
-| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
-| `old_target` | [string](#string) | | old_target is the account that used to be able to accept the Payment (but not any more). |
-| `new_target` | [string](#string) | | new_target is the account that is now able to accept the Payment. |
-| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
+| `bid_order` | [BidOrder](#provenance-exchange-v1-BidOrder) | | bid_order is the details of the order being created. |
+| `order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | order_creation_fee is the fee that is being paid to create this order. |
-
-
+
-
+### MsgCreateBidResponse
+MsgCreateBidResponse is a response message for the CreateBid endpoint.
-
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `order_id` | [uint64](#uint64) | | order_id is the id of the order created. |
-
-Top
-## provenance/exchange/v1/market.proto
+
-
+### MsgCreatePaymentRequest
+MsgCreatePaymentRequest is a request message for the CreatePayment endpoint.
-### AccessGrant
-AddrPermissions associates an address with a list of permissions available for that address.
+The signer is the payment.source, but we can't define that using the cosmos.msg.v1.signer option.
+So signers for this msg are defined in code using a custom get-signers function.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the address that these permissions apply to. |
-| `permissions` | [Permission](#provenance.exchange.v1.Permission) | repeated | allowed is the list of permissions available for the address. |
-
+| `payment` | [Payment](#provenance-exchange-v1-Payment) | | payment is the details of the payment to create. |
-
-
-### FeeRatio
-FeeRatio defines a ratio of price amount to fee amount.
-For an order to be valid, its price must be evenly divisible by a FeeRatio's price.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is the unit the order price is divided by to get how much of the fee should apply. |
-| `fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | fee is the amount to charge per price unit. |
+### MsgCreatePaymentResponse
+MsgCreatePaymentResponse is a response message for the CreatePayment endpoint.
-
+
-### Market
-Market contains all information about a market.
+### MsgFillAsksRequest
+MsgFillAsksRequest is a request message for the FillAsks endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
-| `market_details` | [MarketDetails](#provenance.exchange.v1.MarketDetails) | | market_details is some information about this market. |
-| `fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_create_ask_flat is the flat fee charged for creating an ask order. Each coin entry is a separate option. When an ask is created, one of these must be paid. If empty, no fee is required to create an ask order. |
-| `fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_create_bid_flat is the flat fee charged for creating a bid order. Each coin entry is a separate option. When a bid is created, one of these must be paid. If empty, no fee is required to create a bid order. |
-| `fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_seller_settlement_flat is the flat fee charged to the seller during settlement. Each coin entry is a separate option. When an ask is settled, the seller will pay the amount in the denom that matches the price they received. |
-| `fee_seller_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | fee_seller_settlement_ratios is the fee to charge a seller during settlement based on the price they are receiving. The price and fee denoms must be equal for each entry, and only one entry for any given denom is allowed. |
-| `fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_buyer_settlement_flat is the flat fee charged to the buyer during settlement. Each coin entry is a separate option. When a bid is created, the settlement fees provided must contain one of these. |
-| `fee_buyer_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | fee_buyer_settlement_ratios is the fee to charge a buyer during settlement based on the price they are spending. The price and fee denoms do not have to equal. Multiple entries for any given price or fee denom are allowed, but each price denom to fee denom pair can only have one entry. |
-| `accepting_orders` | [bool](#bool) | | accepting_orders is whether this market is allowing orders to be created for it. |
-| `allow_user_settlement` | [bool](#bool) | | allow_user_settlement is whether this market allows users to initiate their own settlements. For example, the FillBids and FillAsks endpoints are available if and only if this is true. The MarketSettle endpoint is only available to market actors regardless of the value of this field. |
-| `access_grants` | [AccessGrant](#provenance.exchange.v1.AccessGrant) | repeated | access_grants is the list of addresses and permissions granted for this market. |
-| `req_attr_create_ask` | [string](#string) | repeated | req_attr_create_ask is a list of attributes required on an account for it to be allowed to create an ask order. An account must have all of these attributes in order to create an ask order in this market. If the list is empty, any account can create ask orders in this market.
-
-An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "b.x.a", or "c.b.a.x". |
-| `req_attr_create_bid` | [string](#string) | repeated | req_attr_create_ask is a list of attributes required on an account for it to be allowed to create a bid order. An account must have all of these attributes in order to create a bid order in this market. If the list is empty, any account can create bid orders in this market.
-
-An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "c.b.x.a", or "c.b.a.x". |
-| `accepting_commitments` | [bool](#bool) | | accepting_commitments is whether the market is allowing users to commit funds to it. |
-| `fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_create_commitment_flat is the flat fee charged for creating a commitment. Each coin entry is a separate option. When a commitment is created, one of these must be paid. If empty, no fee is required to create a commitment. |
-| `commitment_settlement_bips` | [uint32](#uint32) | | commitment_settlement_bips is the fraction of a commitment settlement that will be paid to the exchange. It is represented in basis points (1/100th of 1%, e.g. 0.0001) and is limited to 0 to 10,000 inclusive. During a commitment settlement, the inputs are summed and NAVs are used to convert that total to the intermediary denom, then to the fee denom. That is then multiplied by this value to get the fee amount that will be transferred out of the market's account into the exchange for that settlement.
-
-Summing the inputs effectively doubles the value of the settlement from what what is usually thought of as the value of a trade. That should be taken into account when setting this value. E.g. if two accounts are trading 10apples for 100grapes, the inputs total will be 10apples,100grapes (which might then be converted to USD then nhash before applying this ratio); Usually, though, the value of that trade would be viewed as either just 10apples or just 100grapes. |
-| `intermediary_denom` | [string](#string) | | intermediary_denom is the denom that funds get converted to (before being converted to the chain's fee denom) when calculating the fees that are paid to the exchange. NAVs are used for this conversion and actions will fail if a NAV is needed but not available. |
-| `req_attr_create_commitment` | [string](#string) | repeated | req_attr_create_commitment is a list of attributes required on an account for it to be allowed to create a commitment. An account must have all of these attributes in order to create a commitment in this market. If the list is empty, any account can create commitments in this market.
-
-An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "c.b.x.a", or "c.b.a.x". |
-
-
+| `buyer` | [string](#string) | | buyer is the address of the account attempting to buy some assets. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the asks to fill. All ask orders being filled must be in this market. |
+| `total_price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | total_price is the total amount being spent on some assets. It must be the sum of all ask order prices. |
+| `ask_order_ids` | [uint64](#uint64) | repeated | ask_order_ids are the ids of the ask orders that you are trying to fill. All ids must be for ask orders, and must be in the same market as the market_id. |
+| `buyer_settlement_fees` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | buyer_settlement_fees are the fees (both flat and proportional) that the buyer will pay (in addition to the price) for this settlement. |
+| `bid_order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | bid_order_creation_fee is the fee that is being paid to create this order (which is immediately then settled). |
-
-### MarketAccount
-MarketAccount is an account type for use with the accounts module to hold some basic information about a market.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `base_account` | [cosmos.auth.v1beta1.BaseAccount](#cosmos.auth.v1beta1.BaseAccount) | | base_account is the base cosmos account information. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
-| `market_details` | [MarketDetails](#provenance.exchange.v1.MarketDetails) | | market_details is some human-consumable information about this market. |
+### MsgFillAsksResponse
+MsgFillAsksResponse is a response message for the FillAsks endpoint.
-
+
-### MarketBrief
-MarketBrief is a message containing brief, superficial information about a market.
+### MsgFillBidsRequest
+MsgFillBidsRequest is a request message for the FillBids endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
-| `market_address` | [string](#string) | | market_address is the bech32 address string of this market's account. |
-| `market_details` | [MarketDetails](#provenance.exchange.v1.MarketDetails) | | market_details is some information about this market. |
+| `seller` | [string](#string) | | seller is the address of the account with the assets to sell. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the bids to fill. All bid orders being filled must be in this market. |
+| `total_assets` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | total_assets are the things that the seller wishes to sell. It must be the sum of all bid order assets. |
+| `bid_order_ids` | [uint64](#uint64) | repeated | bid_order_ids are the ids of the bid orders that you are trying to fill. All ids must be for bid orders, and must be in the same market as the market_id. |
+| `seller_settlement_flat_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | seller_settlement_flat_fee is the flat fee for sellers that will be charged for this settlement. |
+| `ask_order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | ask_order_creation_fee is the fee that is being paid to create this order (which is immediately then settled). |
-
+
-### MarketDetails
-MarketDetails contains information about a market.
+### MsgFillBidsResponse
+MsgFillBidsResponse is a response message for the FillBids endpoint.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | name is a moniker that people can use to refer to this market. |
-| `description` | [string](#string) | | description extra information about this market. The field is meant to be human-readable. |
-| `website_url` | [string](#string) | | website_url is a url people can use to get to this market, or at least get more information about this market. |
-| `icon_uri` | [string](#string) | | icon_uri is a uri for an icon to associate with this market. |
+
-
+### MsgGovCloseMarketRequest
+MsgGovCloseMarketRequest is a request message for the GovCloseMarket endpoint.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `authority` | [string](#string) | | authority must be the governance module account. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to close. |
-### Permission
-Permission defines the different types of permission that can be given to an account for a market.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| PERMISSION_UNSPECIFIED | 0 | PERMISSION_UNSPECIFIED is the zero-value Permission; it is an error to use it. |
-| PERMISSION_SETTLE | 1 | PERMISSION_SETTLE is the ability to use the Settle Tx endpoint on behalf of a market. |
-| PERMISSION_SET_IDS | 2 | PERMISSION_SET_IDS is the ability to use the SetOrderExternalID Tx endpoint on behalf of a market. |
-| PERMISSION_CANCEL | 3 | PERMISSION_CANCEL is the ability to use the Cancel Tx endpoint on behalf of a market. |
-| PERMISSION_WITHDRAW | 4 | PERMISSION_WITHDRAW is the ability to use the MarketWithdraw Tx endpoint. |
-| PERMISSION_UPDATE | 5 | PERMISSION_UPDATE is the ability to use the MarketUpdate* Tx endpoints. |
-| PERMISSION_PERMISSIONS | 6 | PERMISSION_PERMISSIONS is the ability to use the MarketManagePermissions Tx endpoint. |
-| PERMISSION_ATTRIBUTES | 7 | PERMISSION_ATTRIBUTES is the ability to use the MarketManageReqAttrs Tx endpoint. |
-
-
-
+
+### MsgGovCloseMarketResponse
+MsgGovCloseMarketResponse is a response message for the GovCloseMarket endpoint.
-
-Top
-## provenance/exchange/v1/orders.proto
-
+
-### AskOrder
-AskOrder represents someone's desire to sell something at a minimum price.
+### MsgGovCreateMarketRequest
+MsgGovCreateMarketRequest is a request message for the GovCreateMarket endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id identifies the market that this order belongs to. |
-| `seller` | [string](#string) | | seller is the address of the account that owns this order and has the assets to sell. |
-| `assets` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | assets are the things that the seller wishes to sell. A hold is placed on this until the order is filled or cancelled. |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is the minimum amount that the seller is willing to accept for the assets. The seller's settlement proportional fee (and possibly the settlement flat fee) is taken out of the amount the seller receives, so it's possible that the seller will still receive less than this price. |
-| `seller_settlement_flat_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | seller_settlement_flat_fee is the flat fee for sellers that will be charged during settlement. If this denom is the same denom as the price, it will come out of the actual price received. If this denom is different, the amount must be in the seller's account and a hold is placed on it until the order is filled or cancelled. |
-| `allow_partial` | [bool](#bool) | | allow_partial should be true if partial fulfillment of this order should be allowed, and should be false if the order must be either filled in full or not filled at all. |
-| `external_id` | [string](#string) | | external_id is an optional string used to externally identify this order. Max length is 100 characters. If an order in this market with this external id already exists, this order will be rejected. |
-
-
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `market` | [Market](#provenance-exchange-v1-Market) | | market is the initial market configuration. If the market_id is 0, the next available market_id will be used (once voting ends). If it is not zero, it must not yet be in use when the voting period ends. |
-
-### BidOrder
-BidOrder represents someone's desire to buy something at a specific price.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `market_id` | [uint32](#uint32) | | market_id identifies the market that this order belongs to. |
-| `buyer` | [string](#string) | | buyer is the address of the account that owns this order and has the price to spend. |
-| `assets` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | assets are the things that the buyer wishes to buy. |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is the amount that the buyer will pay for the assets. A hold is placed on this until the order is filled or cancelled. |
-| `buyer_settlement_fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | buyer_settlement_fees are the fees (both flat and proportional) that the buyer will pay (in addition to the price) when the order is settled. A hold is placed on this until the order is filled or cancelled. |
-| `allow_partial` | [bool](#bool) | | allow_partial should be true if partial fulfillment of this order should be allowed, and should be false if the order must be either filled in full or not filled at all. |
-| `external_id` | [string](#string) | | external_id is an optional string used to externally identify this order. Max length is 100 characters. If an order in this market with this external id already exists, this order will be rejected. |
+### MsgGovCreateMarketResponse
+MsgGovCreateMarketResponse is a response message for the GovCreateMarket endpoint.
-
+
-### Order
-Order associates an order id with one of the order types.
+### MsgGovManageFeesRequest
+MsgGovManageFeesRequest is a request message for the GovManageFees endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier for this order. |
-| `ask_order` | [AskOrder](#provenance.exchange.v1.AskOrder) | | ask_order is the information about this order if it represents an ask order. |
-| `bid_order` | [BidOrder](#provenance.exchange.v1.BidOrder) | | bid_order is the information about this order if it represents a bid order. |
-
-
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `market_id` | [uint32](#uint32) | | market_id is the market id that will get these fee updates. |
+| `add_fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | add_fee_create_ask_flat are the create-ask flat fee options to add. |
+| `remove_fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | remove_fee_create_ask_flat are the create-ask flat fee options to remove. |
+| `add_fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | add_fee_create_bid_flat are the create-bid flat fee options to add. |
+| `remove_fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | remove_fee_create_bid_flat are the create-bid flat fee options to remove. |
+| `add_fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | add_fee_seller_settlement_flat are the seller settlement flat fee options to add. |
+| `remove_fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | remove_fee_seller_settlement_flat are the seller settlement flat fee options to remove. |
+| `add_fee_seller_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | add_fee_seller_settlement_ratios are the seller settlement fee ratios to add. |
+| `remove_fee_seller_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | remove_fee_seller_settlement_ratios are the seller settlement fee ratios to remove. |
+| `add_fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | add_fee_buyer_settlement_flat are the buyer settlement flat fee options to add. |
+| `remove_fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | remove_fee_buyer_settlement_flat are the buyer settlement flat fee options to remove. |
+| `add_fee_buyer_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | add_fee_buyer_settlement_ratios are the buyer settlement fee ratios to add. |
+| `remove_fee_buyer_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | remove_fee_buyer_settlement_ratios are the buyer settlement fee ratios to remove. |
+| `add_fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | add_fee_create_commitment_flat are the create-commitment flat fee options to add. |
+| `remove_fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | remove_fee_create_commitment_flat are the create-commitment flat fee options to remove. |
+| `set_fee_commitment_settlement_bips` | [uint32](#uint32) | | set_fee_commitment_settlement_bips is the new fee_commitment_settlement_bips for the market. It is ignored if it is zero. To set it to zero set unset_fee_commitment_settlement_bips to true. |
+| `unset_fee_commitment_settlement_bips` | [bool](#bool) | | unset_fee_commitment_settlement_bips, if true, sets the fee_commitment_settlement_bips to zero. If false, it is ignored. |
-
-
-
-
+
+### MsgGovManageFeesResponse
+MsgGovManageFeesResponse is a response message for the GovManageFees endpoint.
-
-Top
-## provenance/exchange/v1/params.proto
-
+
-### DenomSplit
-DenomSplit associates a coin denomination with an amount the exchange receives for that denom.
+### MsgGovUpdateParamsRequest
+MsgGovUpdateParamsRequest is a request message for the GovUpdateParams endpoint.
+Deprecated: Use MsgUpdateParamsRequest instead.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | denom is the coin denomination this split applies to. |
-| `split` | [uint32](#uint32) | | split is the proportion of fees the exchange receives for this denom in basis points. E.g. 100 = 1%. Min = 0, Max = 10000. |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-exchange-v1-Params) | | params are the new param values to set |
-
+
-### Params
-Params is a representation of the exchange module parameters.
+### MsgGovUpdateParamsResponse
+MsgGovUpdateParamsResponse is a response message for the GovUpdateParams endpoint.
+Deprecated: Use MsgUpdateParamsResponse instead.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `default_split` | [uint32](#uint32) | | default_split is the default proportion of fees the exchange receives in basis points. It is used if there isn't an applicable denom-specific split defined. E.g. 100 = 1%. Min = 0, Max = 10000. |
-| `denom_splits` | [DenomSplit](#provenance.exchange.v1.DenomSplit) | repeated | denom_splits are the denom-specific amounts the exchange receives. |
-| `fee_create_payment_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_create_payment_flat is the flat fee options for creating a payment. If the source amount is not zero then one of these fee entries is required to create the payment. This field is currently limited to zero or one entries. |
-| `fee_accept_payment_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_accept_payment_flat is the flat fee options for accepting a payment. If the target amount is not zero then one of these fee entries is required to accept the payment. This field is currently limited to zero or one entries. |
+
-
+### MsgMarketCommitmentSettleRequest
+MsgMarketCommitmentSettleRequest is a request message for the MarketCommitmentSettle endpoint.
-
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `admin` | [string](#string) | | admin is the account with "settle" permission requesting this settlement. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market requesting this settlement. |
+| `inputs` | [AccountAmount](#provenance-exchange-v1-AccountAmount) | repeated | inputs defines where the funds are coming from. All of these funds must be already committed to the market. |
+| `outputs` | [AccountAmount](#provenance-exchange-v1-AccountAmount) | repeated | outputs defines how the funds are to be distributed. These funds will be re-committed in the destination accounts. |
+| `fees` | [AccountAmount](#provenance-exchange-v1-AccountAmount) | repeated | fees is the funds that the market is collecting as part of this settlement. All of these funds must be already committed to the market. |
+| `navs` | [NetAssetPrice](#provenance-exchange-v1-NetAssetPrice) | repeated | navs are any NAV info that should be updated at the beginning of this settlement. |
+| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-committed/released events. Max length is 100 characters. |
-
-
-Top
-## provenance/exchange/v1/payments.proto
+
+### MsgMarketCommitmentSettleResponse
+MsgMarketCommitmentSettleResponse is a response message for the MarketCommitmentSettle endpoint.
-
-### Payment
-Payment represents one account's desire to trade funds with another account.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that created this Payment. It is considered the owner of the payment. |
-| `source_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | source_amount is the funds that the source is will pay the target in exchange for the target_amount. A hold will be placed on this amount in the source account until this Payment is accepted, rejected or cancelled. If the source_amount is zero, this Payment can be considered a "payment request." |
-| `target` | [string](#string) | | target is the account that can accept this Payment. The target is the only thing allowed to change in a payment. I.e. it can be empty initially and updated later as needed. |
-| `target_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | target_amount is the funds that the target will pay the source in exchange for the source_amount. If the target_amount is zero, this Payment can be considered a "peer-to-peer (P2P) payment." |
-| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment.
-A source can only have one Payment with any given external id. A source can have two payments with two different external ids. Two different sources can each have a payment with the same external id. But a source cannot have two different payments each with the same external id.
-An external id can be reused by a source once the payment is accepted, rejected, or cancelled.
+
-The external id is limited to 100 bytes. An empty string is a valid external id. |
+### MsgMarketManagePermissionsRequest
+MsgMarketManagePermissionsRequest is a request message for the MarketManagePermissions endpoint.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `admin` | [string](#string) | | admin is the account with "permissions" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to manage permissions for. |
+| `revoke_all` | [string](#string) | repeated | revoke_all are addresses that should have all their permissions revoked. |
+| `to_revoke` | [AccessGrant](#provenance-exchange-v1-AccessGrant) | repeated | to_revoke are the specific permissions to remove for addresses. |
+| `to_grant` | [AccessGrant](#provenance-exchange-v1-AccessGrant) | repeated | to_grant are the permissions to grant to addresses. |
-
-
-
-
+
+### MsgMarketManagePermissionsResponse
+MsgMarketManagePermissionsResponse is a response message for the MarketManagePermissions endpoint.
-
-Top
-## provenance/exchange/v1/genesis.proto
-
+
-### GenesisState
-GenesisState is the data that should be loaded into the exchange module during genesis.
+### MsgMarketManageReqAttrsRequest
+MsgMarketManageReqAttrsRequest is a request message for the MarketManageReqAttrs endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.exchange.v1.Params) | | params defines all the parameters of the exchange module. |
-| `markets` | [Market](#provenance.exchange.v1.Market) | repeated | markets are all of the markets to create at genesis. |
-| `orders` | [Order](#provenance.exchange.v1.Order) | repeated | orders are all the orders to create at genesis. |
-| `last_market_id` | [uint32](#uint32) | | last_market_id is the value of the last auto-selected market id. |
-| `last_order_id` | [uint64](#uint64) | | last_order_id is the value of the last order id created. |
-| `commitments` | [Commitment](#provenance.exchange.v1.Commitment) | repeated | commitments are all of the commitments to create at genesis. |
-| `payments` | [Payment](#provenance.exchange.v1.Payment) | repeated | payments are all the payments to create at genesis. |
-
-
+| `admin` | [string](#string) | | admin is the account with "attributes" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to update required attributes for. |
+| `create_ask_to_add` | [string](#string) | repeated | create_ask_to_add are the attributes that should now also be required to create an ask order. |
+| `create_ask_to_remove` | [string](#string) | repeated | create_ask_to_remove are the attributes that should no longer be required to create an ask order. |
+| `create_bid_to_add` | [string](#string) | repeated | create_bid_to_add are the attributes that should now also be required to create a bid order. |
+| `create_bid_to_remove` | [string](#string) | repeated | create_bid_to_remove are the attributes that should no longer be required to create a bid order. |
+| `create_commitment_to_add` | [string](#string) | repeated | create_commitment_to_add are the attributes that should now also be required to create a commitment. |
+| `create_commitment_to_remove` | [string](#string) | repeated | create_commitment_to_remove are the attributes that should no longer be required to create a commitment. |
-
-
-
-
+
+### MsgMarketManageReqAttrsResponse
+MsgMarketManageReqAttrsResponse is a response message for the MarketManageReqAttrs endpoint.
-
-Top
-## provenance/exchange/v1/tx.proto
-
+
-### MsgAcceptPaymentRequest
-MsgAcceptPaymentRequest is a request message for the AcceptPayment endpoint.
+### MsgMarketReleaseCommitmentsRequest
+MsgMarketReleaseCommitmentsRequest is a request message for the MarketReleaseCommitments endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payment` | [Payment](#provenance.exchange.v1.Payment) | | payment is the details of the payment to accept. |
+| `admin` | [string](#string) | | admin is the account with "cancel" permission requesting this release. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market releasing these funds. |
+| `to_release` | [AccountAmount](#provenance-exchange-v1-AccountAmount) | repeated | to_release is the funds that are to be released. An entry with a zero amount indicates that all committed funds for that account should be released. |
+| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-released events. Max length is 100 characters. |
-
+
-### MsgAcceptPaymentResponse
-MsgAcceptPaymentResponse is a response message for the AcceptPayment endpoint.
+### MsgMarketReleaseCommitmentsResponse
+MsgMarketReleaseCommitmentsResponse is a response message for the MarketReleaseCommitments endpoint.
-
+
-### MsgCancelOrderRequest
-MsgCancelOrderRequest is a request message for the CancelOrder endpoint.
+### MsgMarketSetOrderExternalIDRequest
+MsgMarketSetOrderExternalIDRequest is a request message for the MarketSetOrderExternalID endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `signer` | [string](#string) | | signer is the account requesting the order cancellation. It must be either the order owner (e.g. the buyer or seller), the governance module account address, or an account with cancel permission with the market that the order is in. |
-| `order_id` | [uint64](#uint64) | | order_id is the id of the order to cancel. |
+| `admin` | [string](#string) | | admin is the account with "set_ids" permission requesting this settlement. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the orders to update. |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order to update. |
+| `external_id` | [string](#string) | | external_id is the new external id to associate with the order. Max length is 100 characters. If the external id is already associated with another order in this market, this update will fail. |
-
+
-### MsgCancelOrderResponse
-MsgCancelOrderResponse is a response message for the CancelOrder endpoint.
+### MsgMarketSetOrderExternalIDResponse
+MsgMarketSetOrderExternalIDResponse is a response message for the MarketSetOrderExternalID endpoint.
-
+
-### MsgCancelPaymentsRequest
-MsgCancelPaymentsRequest is a request message for the CancelPayments endpoint.
+### MsgMarketSettleRequest
+MsgMarketSettleRequest is a request message for the MarketSettle endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that wishes to cancel some of their payments. |
-| `external_ids` | [string](#string) | repeated | external_ids is all of the external ids of the payments to cancel. |
+| `admin` | [string](#string) | | admin is the account with "settle" permission requesting this settlement. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market requesting this settlement. |
+| `ask_order_ids` | [uint64](#uint64) | repeated | ask_order_ids are the ask orders being filled. |
+| `bid_order_ids` | [uint64](#uint64) | repeated | bid_order_ids are the bid orders being filled. |
+| `expect_partial` | [bool](#bool) | | expect_partial is whether to expect an order to only be partially filled. Set to true to indicate that either the last ask order, or last bid order will be partially filled by this settlement. Set to false to indicate that all provided orders will be filled in full during this settlement. |
-
+
-### MsgCancelPaymentsResponse
-MsgCancelPaymentsResponse is a response message for the CancelPayments endpoint.
+### MsgMarketSettleResponse
+MsgMarketSettleResponse is a response message for the MarketSettle endpoint.
-
+
-### MsgChangePaymentTargetRequest
-MsgChangePaymentTargetRequest is a request message for the ChangePaymentTarget endpoint.
+### MsgMarketUpdateAcceptingCommitmentsRequest
+MsgMarketUpdateAcceptingCommitmentsRequest is a request message for the MarketUpdateAcceptingCommitments endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `source` | [string](#string) | | source is the account that wishes to update the target of one of their payments. |
-| `external_id` | [string](#string) | | external_id is the external id of the payment to update. |
-| `new_target` | [string](#string) | | new_target is the new target account of the payment. |
+| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable commitments for. |
+| `accepting_commitments` | [bool](#bool) | | accepting_commitments is whether this market allows users to commit funds to it. For example, the CommitFunds endpoint is available if and only if this is true. The MarketCommitmentSettle endpoint is available (only to market actors) regardless of the value of this field. |
-
+
-### MsgChangePaymentTargetResponse
-MsgChangePaymentTargetResponse is a response message for the ChangePaymentTarget endpoint.
+### MsgMarketUpdateAcceptingCommitmentsResponse
+MsgMarketUpdateAcceptingCommitmentsResponse is a response message for the MarketUpdateAcceptingCommitments endpoint.
-
+
-### MsgCommitFundsRequest
-MsgCommitFundsRequest is a request message for the CommitFunds endpoint.
+### MsgMarketUpdateAcceptingOrdersRequest
+MsgMarketUpdateAcceptingOrdersRequest is a request message for the MarketUpdateAcceptingOrders endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the address of the account with the funds being committed. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market the funds will be committed to. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the funds being committed to the market. |
-| `creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | creation_fee is the fee that is being paid to create this commitment. |
-| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-committed event. Max length is 100 characters. |
+| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable. |
+| `accepting_orders` | [bool](#bool) | | accepting_orders is whether this market is allowing orders to be created for it. |
-
+
-### MsgCommitFundsResponse
-MsgCommitFundsResponse is a response message for the CommitFunds endpoint.
+### MsgMarketUpdateAcceptingOrdersResponse
+MsgMarketUpdateAcceptingOrdersResponse is a response message for the MarketUpdateAcceptingOrders endpoint.
-
+
-### MsgCreateAskRequest
-MsgCreateAskRequest is a request message for the CreateAsk endpoint.
+### MsgMarketUpdateDetailsRequest
+MsgMarketUpdateDetailsRequest is a request message for the MarketUpdateDetails endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `ask_order` | [AskOrder](#provenance.exchange.v1.AskOrder) | | ask_order is the details of the order being created. |
-| `order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | order_creation_fee is the fee that is being paid to create this order. |
-
-
+| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to update details for. |
+| `market_details` | [MarketDetails](#provenance-exchange-v1-MarketDetails) | | market_details is some information about this market. |
-
-### MsgCreateAskResponse
-MsgCreateAskResponse is a response message for the CreateAsk endpoint.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the id of the order created. |
+### MsgMarketUpdateDetailsResponse
+MsgMarketUpdateDetailsResponse is a response message for the MarketUpdateDetails endpoint.
-
+
-### MsgCreateBidRequest
-MsgCreateBidRequest is a request message for the CreateBid endpoint.
+### MsgMarketUpdateEnabledRequest
+MsgMarketUpdateEnabledRequest is a request message for the MarketUpdateEnabled endpoint.
+Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `bid_order` | [BidOrder](#provenance.exchange.v1.BidOrder) | | bid_order is the details of the order being created. |
-| `order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | order_creation_fee is the fee that is being paid to create this order. |
-
-
+| `admin` | [string](#string) | | **Deprecated.** admin is the account with "update" permission requesting this change. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
+| `market_id` | [uint32](#uint32) | | **Deprecated.** market_id is the numerical identifier of the market to enable or disable. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
+| `accepting_orders` | [bool](#bool) | | **Deprecated.** accepting_orders is whether this market is allowing orders to be created for it. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
-
-### MsgCreateBidResponse
-MsgCreateBidResponse is a response message for the CreateBid endpoint.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `order_id` | [uint64](#uint64) | | order_id is the id of the order created. |
+### MsgMarketUpdateEnabledResponse
+MsgMarketUpdateEnabledResponse is a response message for the MarketUpdateEnabled endpoint.
+Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders.
-
+
-### MsgCreatePaymentRequest
-MsgCreatePaymentRequest is a request message for the CreatePayment endpoint.
+### MsgMarketUpdateIntermediaryDenomRequest
+MsgMarketUpdateIntermediaryDenomRequest is a request message for the MarketUpdateIntermediaryDenom endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payment` | [Payment](#provenance.exchange.v1.Payment) | | payment is the details of the payment to create. |
+| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market changing the intermediary denom. |
+| `intermediary_denom` | [string](#string) | | intermediary_denom is the new intermediary denom for this market to use. |
-
+
-### MsgCreatePaymentResponse
-MsgCreatePaymentResponse is a response message for the CreatePayment endpoint.
+### MsgMarketUpdateIntermediaryDenomResponse
+MsgMarketUpdateIntermediaryDenomResponse is a response message for the MarketUpdateIntermediaryDenom endpoint.
-
+
-### MsgFillAsksRequest
-MsgFillAsksRequest is a request message for the FillAsks endpoint.
+### MsgMarketUpdateUserSettleRequest
+MsgMarketUpdateUserSettleRequest is a request message for the MarketUpdateUserSettle endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `buyer` | [string](#string) | | buyer is the address of the account attempting to buy some assets. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the asks to fill. All ask orders being filled must be in this market. |
-| `total_price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | total_price is the total amount being spent on some assets. It must be the sum of all ask order prices. |
-| `ask_order_ids` | [uint64](#uint64) | repeated | ask_order_ids are the ids of the ask orders that you are trying to fill. All ids must be for ask orders, and must be in the same market as the market_id. |
-| `buyer_settlement_fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | buyer_settlement_fees are the fees (both flat and proportional) that the buyer will pay (in addition to the price) for this settlement. |
-| `bid_order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | bid_order_creation_fee is the fee that is being paid to create this order (which is immediately then settled). |
+| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable user-settlement for. |
+| `allow_user_settlement` | [bool](#bool) | | allow_user_settlement is whether this market allows users to initiate their own settlements. For example, the FillBids and FillAsks endpoints are available if and only if this is true. The MarketSettle endpoint is available (only to market actors) regardless of the value of this field. |
-
+
-### MsgFillAsksResponse
-MsgFillAsksResponse is a response message for the FillAsks endpoint.
+### MsgMarketUpdateUserSettleResponse
+MsgMarketUpdateUserSettleResponse is a response message for the MarketUpdateUserSettle endpoint.
-
+
-### MsgFillBidsRequest
-MsgFillBidsRequest is a request message for the FillBids endpoint.
+### MsgMarketWithdrawRequest
+MsgMarketWithdrawRequest is a request message for the MarketWithdraw endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `seller` | [string](#string) | | seller is the address of the account with the assets to sell. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the bids to fill. All bid orders being filled must be in this market. |
-| `total_assets` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | total_assets are the things that the seller wishes to sell. It must be the sum of all bid order assets. |
-| `bid_order_ids` | [uint64](#uint64) | repeated | bid_order_ids are the ids of the bid orders that you are trying to fill. All ids must be for bid orders, and must be in the same market as the market_id. |
-| `seller_settlement_flat_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | seller_settlement_flat_fee is the flat fee for sellers that will be charged for this settlement. |
-| `ask_order_creation_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | ask_order_creation_fee is the fee that is being paid to create this order (which is immediately then settled). |
+| `admin` | [string](#string) | | admin is the account with withdraw permission requesting the withdrawal. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to withdraw from. |
+| `to_address` | [string](#string) | | to_address is the address that will receive the funds. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the funds to withdraw. |
-
+
-### MsgFillBidsResponse
-MsgFillBidsResponse is a response message for the FillBids endpoint.
+### MsgMarketWithdrawResponse
+MsgMarketWithdrawResponse is a response message for the MarketWithdraw endpoint.
-
+
-### MsgGovCloseMarketRequest
-MsgGovCloseMarketRequest is a request message for the GovCloseMarket endpoint.
+### MsgRejectPaymentRequest
+MsgRejectPaymentRequest is a request message for the RejectPayment endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | authority must be the governance module account. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to close. |
+| `target` | [string](#string) | | target is the target account of the payment to reject. |
+| `source` | [string](#string) | | source is the source account of the payment to reject. |
+| `external_id` | [string](#string) | | external_id is the external id of the payment to reject. |
-
+
-### MsgGovCloseMarketResponse
-MsgGovCloseMarketResponse is a response message for the GovCloseMarket endpoint.
+### MsgRejectPaymentResponse
+MsgRejectPaymentResponse is a response message for the RejectPayment endpoint.
-
+
-### MsgGovCreateMarketRequest
-MsgGovCreateMarketRequest is a request message for the GovCreateMarket endpoint.
+### MsgRejectPaymentsRequest
+MsgRejectPaymentsRequest is a request message for the RejectPayments endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | authority should be the governance module account address. |
-| `market` | [Market](#provenance.exchange.v1.Market) | | market is the initial market configuration. If the market_id is 0, the next available market_id will be used (once voting ends). If it is not zero, it must not yet be in use when the voting period ends. |
+| `target` | [string](#string) | | target is the account that wishes to reject some payments. |
+| `sources` | [string](#string) | repeated | sources is the source accounts of the payments to reject. |
-
+
-### MsgGovCreateMarketResponse
-MsgGovCreateMarketResponse is a response message for the GovCreateMarket endpoint.
+### MsgRejectPaymentsResponse
+MsgRejectPaymentsResponse is a response message for the RejectPayments endpoint.
-
+
-### MsgGovManageFeesRequest
-MsgGovManageFeesRequest is a request message for the GovManageFees endpoint.
+### MsgUpdateParamsRequest
+MsgGovUpdateParamsRequest is a request message for the GovUpdateParams endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `authority` | [string](#string) | | authority should be the governance module account address. |
-| `market_id` | [uint32](#uint32) | | market_id is the market id that will get these fee updates. |
-| `add_fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | add_fee_create_ask_flat are the create-ask flat fee options to add. |
-| `remove_fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | remove_fee_create_ask_flat are the create-ask flat fee options to remove. |
-| `add_fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | add_fee_create_bid_flat are the create-bid flat fee options to add. |
-| `remove_fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | remove_fee_create_bid_flat are the create-bid flat fee options to remove. |
-| `add_fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | add_fee_seller_settlement_flat are the seller settlement flat fee options to add. |
-| `remove_fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | remove_fee_seller_settlement_flat are the seller settlement flat fee options to remove. |
-| `add_fee_seller_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | add_fee_seller_settlement_ratios are the seller settlement fee ratios to add. |
-| `remove_fee_seller_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | remove_fee_seller_settlement_ratios are the seller settlement fee ratios to remove. |
-| `add_fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | add_fee_buyer_settlement_flat are the buyer settlement flat fee options to add. |
-| `remove_fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | remove_fee_buyer_settlement_flat are the buyer settlement flat fee options to remove. |
-| `add_fee_buyer_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | add_fee_buyer_settlement_ratios are the buyer settlement fee ratios to add. |
-| `remove_fee_buyer_settlement_ratios` | [FeeRatio](#provenance.exchange.v1.FeeRatio) | repeated | remove_fee_buyer_settlement_ratios are the buyer settlement fee ratios to remove. |
-| `add_fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | add_fee_create_commitment_flat are the create-commitment flat fee options to add. |
-| `remove_fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | remove_fee_create_commitment_flat are the create-commitment flat fee options to remove. |
-| `set_fee_commitment_settlement_bips` | [uint32](#uint32) | | set_fee_commitment_settlement_bips is the new fee_commitment_settlement_bips for the market. It is ignored if it is zero. To set it to zero set unset_fee_commitment_settlement_bips to true. |
-| `unset_fee_commitment_settlement_bips` | [bool](#bool) | | unset_fee_commitment_settlement_bips, if true, sets the fee_commitment_settlement_bips to zero. If false, it is ignored. |
+| `params` | [Params](#provenance-exchange-v1-Params) | | params are the new param values to set |
-
-
-### MsgGovManageFeesResponse
-MsgGovManageFeesResponse is a response message for the GovManageFees endpoint.
-
-
+
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the GovUpdateParams endpoint.
-
-### MsgGovUpdateParamsRequest
-MsgGovUpdateParamsRequest is a request message for the GovUpdateParams endpoint.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | authority should be the governance module account address. |
-| `params` | [Params](#provenance.exchange.v1.Params) | | params are the new param values to set |
+
+
+
+### Msg
+Msg is the service for exchange module's tx endpoints.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `CreateAsk` | [MsgCreateAskRequest](#provenance-exchange-v1-MsgCreateAskRequest) | [MsgCreateAskResponse](#provenance-exchange-v1-MsgCreateAskResponse) | CreateAsk creates an ask order (to sell something you own). |
+| `CreateBid` | [MsgCreateBidRequest](#provenance-exchange-v1-MsgCreateBidRequest) | [MsgCreateBidResponse](#provenance-exchange-v1-MsgCreateBidResponse) | CreateBid creates a bid order (to buy something you want). |
+| `CommitFunds` | [MsgCommitFundsRequest](#provenance-exchange-v1-MsgCommitFundsRequest) | [MsgCommitFundsResponse](#provenance-exchange-v1-MsgCommitFundsResponse) | CommitFunds marks funds in an account as manageable by a market. |
+| `CancelOrder` | [MsgCancelOrderRequest](#provenance-exchange-v1-MsgCancelOrderRequest) | [MsgCancelOrderResponse](#provenance-exchange-v1-MsgCancelOrderResponse) | CancelOrder cancels an order. |
+| `FillBids` | [MsgFillBidsRequest](#provenance-exchange-v1-MsgFillBidsRequest) | [MsgFillBidsResponse](#provenance-exchange-v1-MsgFillBidsResponse) | FillBids uses the assets in your account to fulfill one or more bids (similar to a fill-or-cancel ask). |
+| `FillAsks` | [MsgFillAsksRequest](#provenance-exchange-v1-MsgFillAsksRequest) | [MsgFillAsksResponse](#provenance-exchange-v1-MsgFillAsksResponse) | FillAsks uses the funds in your account to fulfill one or more asks (similar to a fill-or-cancel bid). |
+| `MarketSettle` | [MsgMarketSettleRequest](#provenance-exchange-v1-MsgMarketSettleRequest) | [MsgMarketSettleResponse](#provenance-exchange-v1-MsgMarketSettleResponse) | MarketSettle is a market endpoint to trigger the settlement of orders. |
+| `MarketCommitmentSettle` | [MsgMarketCommitmentSettleRequest](#provenance-exchange-v1-MsgMarketCommitmentSettleRequest) | [MsgMarketCommitmentSettleResponse](#provenance-exchange-v1-MsgMarketCommitmentSettleResponse) | MarketCommitmentSettle is a market endpoint to transfer committed funds. |
+| `MarketReleaseCommitments` | [MsgMarketReleaseCommitmentsRequest](#provenance-exchange-v1-MsgMarketReleaseCommitmentsRequest) | [MsgMarketReleaseCommitmentsResponse](#provenance-exchange-v1-MsgMarketReleaseCommitmentsResponse) | MarketReleaseCommitments is a market endpoint return control of funds back to the account owner(s). |
+| `MarketSetOrderExternalID` | [MsgMarketSetOrderExternalIDRequest](#provenance-exchange-v1-MsgMarketSetOrderExternalIDRequest) | [MsgMarketSetOrderExternalIDResponse](#provenance-exchange-v1-MsgMarketSetOrderExternalIDResponse) | MarketSetOrderExternalID updates an order's external id field. |
+| `MarketWithdraw` | [MsgMarketWithdrawRequest](#provenance-exchange-v1-MsgMarketWithdrawRequest) | [MsgMarketWithdrawResponse](#provenance-exchange-v1-MsgMarketWithdrawResponse) | MarketWithdraw is a market endpoint to withdraw fees that have been collected. |
+| `MarketUpdateDetails` | [MsgMarketUpdateDetailsRequest](#provenance-exchange-v1-MsgMarketUpdateDetailsRequest) | [MsgMarketUpdateDetailsResponse](#provenance-exchange-v1-MsgMarketUpdateDetailsResponse) | MarketUpdateDetails is a market endpoint to update its details. |
+| `MarketUpdateEnabled` | [MsgMarketUpdateEnabledRequest](#provenance-exchange-v1-MsgMarketUpdateEnabledRequest) | [MsgMarketUpdateEnabledResponse](#provenance-exchange-v1-MsgMarketUpdateEnabledResponse) | MarketUpdateEnabled is a market endpoint to update whether its accepting orders. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
+| `MarketUpdateAcceptingOrders` | [MsgMarketUpdateAcceptingOrdersRequest](#provenance-exchange-v1-MsgMarketUpdateAcceptingOrdersRequest) | [MsgMarketUpdateAcceptingOrdersResponse](#provenance-exchange-v1-MsgMarketUpdateAcceptingOrdersResponse) | MarketUpdateAcceptingOrders is a market endpoint to update whether its accepting orders. |
+| `MarketUpdateUserSettle` | [MsgMarketUpdateUserSettleRequest](#provenance-exchange-v1-MsgMarketUpdateUserSettleRequest) | [MsgMarketUpdateUserSettleResponse](#provenance-exchange-v1-MsgMarketUpdateUserSettleResponse) | MarketUpdateUserSettle is a market endpoint to update whether it allows user-initiated settlement. |
+| `MarketUpdateAcceptingCommitments` | [MsgMarketUpdateAcceptingCommitmentsRequest](#provenance-exchange-v1-MsgMarketUpdateAcceptingCommitmentsRequest) | [MsgMarketUpdateAcceptingCommitmentsResponse](#provenance-exchange-v1-MsgMarketUpdateAcceptingCommitmentsResponse) | MarketUpdateAcceptingCommitments is a market endpoint to update whether it accepts commitments. |
+| `MarketUpdateIntermediaryDenom` | [MsgMarketUpdateIntermediaryDenomRequest](#provenance-exchange-v1-MsgMarketUpdateIntermediaryDenomRequest) | [MsgMarketUpdateIntermediaryDenomResponse](#provenance-exchange-v1-MsgMarketUpdateIntermediaryDenomResponse) | MarketUpdateIntermediaryDenom sets a market's intermediary denom. |
+| `MarketManagePermissions` | [MsgMarketManagePermissionsRequest](#provenance-exchange-v1-MsgMarketManagePermissionsRequest) | [MsgMarketManagePermissionsResponse](#provenance-exchange-v1-MsgMarketManagePermissionsResponse) | MarketManagePermissions is a market endpoint to manage a market's user permissions. |
+| `MarketManageReqAttrs` | [MsgMarketManageReqAttrsRequest](#provenance-exchange-v1-MsgMarketManageReqAttrsRequest) | [MsgMarketManageReqAttrsResponse](#provenance-exchange-v1-MsgMarketManageReqAttrsResponse) | MarketManageReqAttrs is a market endpoint to manage the attributes required to interact with it. |
+| `CreatePayment` | [MsgCreatePaymentRequest](#provenance-exchange-v1-MsgCreatePaymentRequest) | [MsgCreatePaymentResponse](#provenance-exchange-v1-MsgCreatePaymentResponse) | CreatePayment creates a payment to facilitate a trade between two accounts. |
+| `AcceptPayment` | [MsgAcceptPaymentRequest](#provenance-exchange-v1-MsgAcceptPaymentRequest) | [MsgAcceptPaymentResponse](#provenance-exchange-v1-MsgAcceptPaymentResponse) | AcceptPayment is used by a target to accept a payment. |
+| `RejectPayment` | [MsgRejectPaymentRequest](#provenance-exchange-v1-MsgRejectPaymentRequest) | [MsgRejectPaymentResponse](#provenance-exchange-v1-MsgRejectPaymentResponse) | RejectPayment can be used by a target to reject a payment. |
+| `RejectPayments` | [MsgRejectPaymentsRequest](#provenance-exchange-v1-MsgRejectPaymentsRequest) | [MsgRejectPaymentsResponse](#provenance-exchange-v1-MsgRejectPaymentsResponse) | RejectPayments can be used by a target to reject all payments from one or more sources. |
+| `CancelPayments` | [MsgCancelPaymentsRequest](#provenance-exchange-v1-MsgCancelPaymentsRequest) | [MsgCancelPaymentsResponse](#provenance-exchange-v1-MsgCancelPaymentsResponse) | CancelPayments can be used by a source to cancel one or more payments. |
+| `ChangePaymentTarget` | [MsgChangePaymentTargetRequest](#provenance-exchange-v1-MsgChangePaymentTargetRequest) | [MsgChangePaymentTargetResponse](#provenance-exchange-v1-MsgChangePaymentTargetResponse) | ChangePaymentTarget can be used by a source to change the target in one of their payments. |
+| `GovCreateMarket` | [MsgGovCreateMarketRequest](#provenance-exchange-v1-MsgGovCreateMarketRequest) | [MsgGovCreateMarketResponse](#provenance-exchange-v1-MsgGovCreateMarketResponse) | GovCreateMarket is a governance proposal endpoint for creating a market. |
+| `GovManageFees` | [MsgGovManageFeesRequest](#provenance-exchange-v1-MsgGovManageFeesRequest) | [MsgGovManageFeesResponse](#provenance-exchange-v1-MsgGovManageFeesResponse) | GovManageFees is a governance proposal endpoint for updating a market's fees. |
+| `GovCloseMarket` | [MsgGovCloseMarketRequest](#provenance-exchange-v1-MsgGovCloseMarketRequest) | [MsgGovCloseMarketResponse](#provenance-exchange-v1-MsgGovCloseMarketResponse) | GovCloseMarket is a governance proposal endpoint that will disable order and commitment creation, cancel all orders, and release all commitments. |
+| `GovUpdateParams` | [MsgGovUpdateParamsRequest](#provenance-exchange-v1-MsgGovUpdateParamsRequest) | [MsgGovUpdateParamsResponse](#provenance-exchange-v1-MsgGovUpdateParamsResponse) | GovUpdateParams is a governance proposal endpoint for updating the exchange module's params. Deprecated: Use UpdateParams instead. |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-exchange-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-exchange-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the exchange module's params. |
-
+
-### MsgGovUpdateParamsResponse
-MsgGovUpdateParamsResponse is a response message for the GovUpdateParams endpoint.
+
+Top
+## provenance/exchange/v1/events.proto
-
+
-### MsgMarketCommitmentSettleRequest
-MsgMarketCommitmentSettleRequest is a request message for the MarketCommitmentSettle endpoint.
+### EventCommitmentReleased
+EventCommitmentReleased is an event emitted when funds are released from their commitment.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "settle" permission requesting this settlement. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market requesting this settlement. |
-| `inputs` | [AccountAmount](#provenance.exchange.v1.AccountAmount) | repeated | inputs defines where the funds are coming from. All of these funds must be already committed to the market. |
-| `outputs` | [AccountAmount](#provenance.exchange.v1.AccountAmount) | repeated | outputs defines how the funds are to be distributed. These funds will be re-committed in the destination accounts. |
-| `fees` | [AccountAmount](#provenance.exchange.v1.AccountAmount) | repeated | fees is the funds that the market is collecting as part of this settlement. All of these funds must be already committed to the market. |
-| `navs` | [NetAssetPrice](#provenance.exchange.v1.NetAssetPrice) | repeated | navs are any NAV info that should be updated at the beginning of this settlement. |
-| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-committed/released events. Max length is 100 characters. |
+| `account` | [string](#string) | | account is the bech32 address string of the account. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `amount` | [string](#string) | | amount is the coins string of the funds that were released from commitment. |
+| `tag` | [string](#string) | | tag is the string provided in the message causing this event. |
-
+
+
+### EventFundsCommitted
+EventFundsCommitted is an event emitted when funds are committed to a market.
-### MsgMarketCommitmentSettleResponse
-MsgMarketCommitmentSettleResponse is a response message for the MarketCommitmentSettle endpoint.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | account is the bech32 address string of the account. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `amount` | [string](#string) | | amount is the coins string of the newly committed funds. |
+| `tag` | [string](#string) | | tag is the string provided in the message causing this event. |
-
-### MsgMarketManagePermissionsRequest
-MsgMarketManagePermissionsRequest is a request message for the MarketManagePermissions endpoint.
+
+
+### EventMarketCommitmentsDisabled
+EventMarketCommitmentsDisabled is an event emitted when a market's accepting_commitments option is disabled.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "permissions" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to manage permissions for. |
-| `revoke_all` | [string](#string) | repeated | revoke_all are addresses that should have all their permissions revoked. |
-| `to_revoke` | [AccessGrant](#provenance.exchange.v1.AccessGrant) | repeated | to_revoke are the specific permissions to remove for addresses. |
-| `to_grant` | [AccessGrant](#provenance.exchange.v1.AccessGrant) | repeated | to_grant are the permissions to grant to addresses. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_commitments option. |
-
+
-### MsgMarketManagePermissionsResponse
-MsgMarketManagePermissionsResponse is a response message for the MarketManagePermissions endpoint.
+### EventMarketCommitmentsEnabled
+EventMarketCommitmentsEnabled is an event emitted when a market's accepting_commitments option is enabled.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_commitments option. |
-
+
-### MsgMarketManageReqAttrsRequest
-MsgMarketManageReqAttrsRequest is a request message for the MarketManageReqAttrs endpoint.
+### EventMarketCreated
+EventMarketCreated is an event emitted when a market has been created.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "attributes" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to update required attributes for. |
-| `create_ask_to_add` | [string](#string) | repeated | create_ask_to_add are the attributes that should now also be required to create an ask order. |
-| `create_ask_to_remove` | [string](#string) | repeated | create_ask_to_remove are the attributes that should no longer be required to create an ask order. |
-| `create_bid_to_add` | [string](#string) | repeated | create_bid_to_add are the attributes that should now also be required to create a bid order. |
-| `create_bid_to_remove` | [string](#string) | repeated | create_bid_to_remove are the attributes that should no longer be required to create a bid order. |
-| `create_commitment_to_add` | [string](#string) | repeated | create_commitment_to_add are the attributes that should now also be required to create a commitment. |
-| `create_commitment_to_remove` | [string](#string) | repeated | create_commitment_to_remove are the attributes that should no longer be required to create a commitment. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-
+
-### MsgMarketManageReqAttrsResponse
-MsgMarketManageReqAttrsResponse is a response message for the MarketManageReqAttrs endpoint.
+### EventMarketDetailsUpdated
+EventMarketDetailsUpdated is an event emitted when a market's details are updated.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the details. |
-
-### MsgMarketReleaseCommitmentsRequest
-MsgMarketReleaseCommitmentsRequest is a request message for the MarketReleaseCommitments endpoint.
+
+
+
+### EventMarketDisabled
+EventMarketDisabled is an event emitted when a market is disabled.
+Deprecated: This event is no longer used. It is replaced with EventMarketOrdersDisabled.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "cancel" permission requesting this release. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market releasing these funds. |
-| `to_release` | [AccountAmount](#provenance.exchange.v1.AccountAmount) | repeated | to_release is the funds that are to be released. An entry with a zero amount indicates that all committed funds for that account should be released. |
-| `event_tag` | [string](#string) | | event_tag is a string that is included in the funds-released events. Max length is 100 characters. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that disabled the market. |
-
+
-### MsgMarketReleaseCommitmentsResponse
-MsgMarketReleaseCommitmentsResponse is a response message for the MarketReleaseCommitments endpoint.
+### EventMarketEnabled
+EventMarketEnabled is an event emitted when a market is enabled.
+Deprecated: This event is no longer used. It is replaced with EventMarketOrdersEnabled.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that enabled the market. |
-
-### MsgMarketSetOrderExternalIDRequest
-MsgMarketSetOrderExternalIDRequest is a request message for the MarketSetOrderExternalID endpoint.
+
+
+
+### EventMarketFeesUpdated
+EventMarketFeesUpdated is an event emitted when a market's fees have been updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "set_ids" permission requesting this settlement. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market with the orders to update. |
-| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order to update. |
-| `external_id` | [string](#string) | | external_id is the new external id to associate with the order. Max length is 100 characters. If the external id is already associated with another order in this market, this update will fail. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
-
+
-### MsgMarketSetOrderExternalIDResponse
-MsgMarketSetOrderExternalIDResponse is a response message for the MarketSetOrderExternalID endpoint.
+### EventMarketIntermediaryDenomUpdated
+EventMarketIntermediaryDenomUpdated is an event emitted when a market updates its
+commitment_settlement_intermediary_denom field.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the intermediary denom. |
-
+
-### MsgMarketSettleRequest
-MsgMarketSettleRequest is a request message for the MarketSettle endpoint.
+### EventMarketOrdersDisabled
+EventMarketOrdersEnabled is an event emitted when a market disables order creation.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "settle" permission requesting this settlement. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market requesting this settlement. |
-| `ask_order_ids` | [uint64](#uint64) | repeated | ask_order_ids are the ask orders being filled. |
-| `bid_order_ids` | [uint64](#uint64) | repeated | bid_order_ids are the bid orders being filled. |
-| `expect_partial` | [bool](#bool) | | expect_partial is whether to expect an order to only be partially filled. Set to true to indicate that either the last ask order, or last bid order will be partially filled by this settlement. Set to false to indicate that all provided orders will be filled in full during this settlement. |
-
-
-
-
-
-
-
-
-### MsgMarketSettleResponse
-MsgMarketSettleResponse is a response message for the MarketSettle endpoint.
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_orders option. |
-
+
-### MsgMarketUpdateAcceptingCommitmentsRequest
-MsgMarketUpdateAcceptingCommitmentsRequest is a request message for the MarketUpdateAcceptingCommitments endpoint.
+### EventMarketOrdersEnabled
+EventMarketOrdersEnabled is an event emitted when a market enables order creation.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable commitments for. |
-| `accepting_commitments` | [bool](#bool) | | accepting_commitments is whether this market allows users to commit funds to it. For example, the CommitFunds endpoint is available if and only if this is true. The MarketCommitmentSettle endpoint is available (only to market actors) regardless of the value of this field. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the accepting_orders option. |
-
+
-### MsgMarketUpdateAcceptingCommitmentsResponse
-MsgMarketUpdateAcceptingCommitmentsResponse is a response message for the MarketUpdateAcceptingCommitments endpoint.
+### EventMarketPermissionsUpdated
+EventMarketPermissionsUpdated is an event emitted when a market's permissions are updated.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the permissions. |
-
-### MsgMarketUpdateAcceptingOrdersRequest
-MsgMarketUpdateAcceptingOrdersRequest is a request message for the MarketUpdateAcceptingOrders endpoint.
+
+
+
+### EventMarketReqAttrUpdated
+EventMarketReqAttrUpdated is an event emitted when a market's required attributes are updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable. |
-| `accepting_orders` | [bool](#bool) | | accepting_orders is whether this market is allowing orders to be created for it. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the required attributes. |
-
+
-### MsgMarketUpdateAcceptingOrdersResponse
-MsgMarketUpdateAcceptingOrdersResponse is a response message for the MarketUpdateAcceptingOrders endpoint.
+### EventMarketUserSettleDisabled
+EventMarketUserSettleDisabled is an event emitted when a market's user_settle option is disabled.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the user_settle option. |
-
+
-### MsgMarketUpdateDetailsRequest
-MsgMarketUpdateDetailsRequest is a request message for the MarketUpdateDetails endpoint.
+### EventMarketUserSettleEnabled
+EventMarketUserSettleEnabled is an event emitted when a market's user_settle option is enabled.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to update details for. |
-| `market_details` | [MarketDetails](#provenance.exchange.v1.MarketDetails) | | market_details is some information about this market. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `updated_by` | [string](#string) | | updated_by is the account that updated the user_settle option. |
-
+
-### MsgMarketUpdateDetailsResponse
-MsgMarketUpdateDetailsResponse is a response message for the MarketUpdateDetails endpoint.
+### EventMarketWithdraw
+EventMarketWithdraw is an event emitted when a withdrawal of a market's collected fees is made.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `amount` | [string](#string) | | amount is the coins amount string of funds withdrawn from the market account. |
+| `destination` | [string](#string) | | destination is the account that received the funds. |
+| `withdrawn_by` | [string](#string) | | withdrawn_by is the account that requested the withdrawal. |
-
-### MsgMarketUpdateEnabledRequest
-MsgMarketUpdateEnabledRequest is a request message for the MarketUpdateEnabled endpoint.
-Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders.
+
+
+
+### EventOrderCancelled
+EventOrderCancelled is an event emitted when an order is cancelled.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | **Deprecated.** admin is the account with "update" permission requesting this change. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
-| `market_id` | [uint32](#uint32) | | **Deprecated.** market_id is the numerical identifier of the market to enable or disable. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
-| `accepting_orders` | [bool](#bool) | | **Deprecated.** accepting_orders is whether this market is allowing orders to be created for it. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order cancelled. |
+| `cancelled_by` | [string](#string) | | cancelled_by is the account that triggered the cancellation of the order. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `external_id` | [string](#string) | | external_id is the order's external id. |
-
+
-### MsgMarketUpdateEnabledResponse
-MsgMarketUpdateEnabledResponse is a response message for the MarketUpdateEnabled endpoint.
-Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders.
+### EventOrderCreated
+EventOrderCreated is an event emitted when an order is created.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order created. |
+| `order_type` | [string](#string) | | order_type is the type of order, e.g. "ask" or "bid". |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `external_id` | [string](#string) | | external_id is the order's external id. |
-
-### MsgMarketUpdateIntermediaryDenomRequest
-MsgMarketUpdateIntermediaryDenomRequest is a request message for the MarketUpdateIntermediaryDenom endpoint.
+
+
+
+### EventOrderExternalIDUpdated
+EventOrderExternalIDUpdated is an event emitted when an order's external id is updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market changing the intermediary denom. |
-| `intermediary_denom` | [string](#string) | | intermediary_denom is the new intermediary denom for this market to use. |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order partially filled. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `external_id` | [string](#string) | | external_id is the order's new external id. |
-
+
-### MsgMarketUpdateIntermediaryDenomResponse
-MsgMarketUpdateIntermediaryDenomResponse is a response message for the MarketUpdateIntermediaryDenom endpoint.
+### EventOrderFilled
+EventOrderFilled is an event emitted when an order has been filled in full.
+This event is also used for orders that were previously partially filled, but have now been filled in full.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order filled. |
+| `assets` | [string](#string) | | assets is the coins amount string of assets bought/sold for this order. |
+| `price` | [string](#string) | | price is the coins amount string of the price payed/received for this order. |
+| `fees` | [string](#string) | | fees is the coins amount string of settlement fees paid with this order. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `external_id` | [string](#string) | | external_id is the order's external id. |
-
-### MsgMarketUpdateUserSettleRequest
-MsgMarketUpdateUserSettleRequest is a request message for the MarketUpdateUserSettle endpoint.
+
+
+
+### EventOrderPartiallyFilled
+EventOrderPartiallyFilled is an event emitted when an order filled in part and still has more left to fill.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with "update" permission requesting this change. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to enable or disable user-settlement for. |
-| `allow_user_settlement` | [bool](#bool) | | allow_user_settlement is whether this market allows users to initiate their own settlements. For example, the FillBids and FillAsks endpoints are available if and only if this is true. The MarketSettle endpoint is available (only to market actors) regardless of the value of this field. |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier of the order partially filled. |
+| `assets` | [string](#string) | | assets is the coins amount string of assets that were filled and removed from the order. |
+| `price` | [string](#string) | | price is the coins amount string of the price payed/received for this order. For ask orders, this might be more than the amount that was removed from the order's price. |
+| `fees` | [string](#string) | | fees is the coins amount string of settlement fees paid with this partial order. For ask orders, this might be more than the amount that was removed from the order's settlement fees. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market. |
+| `external_id` | [string](#string) | | external_id is the order's external id. |
-
+
-### MsgMarketUpdateUserSettleResponse
-MsgMarketUpdateUserSettleResponse is a response message for the MarketUpdateUserSettle endpoint.
+### EventParamsUpdated
+EventParamsUpdated is an event emitted when the exchange module's params have been updated.
-
+
-### MsgMarketWithdrawRequest
-MsgMarketWithdrawRequest is a request message for the MarketWithdraw endpoint.
+### EventPaymentAccepted
+EventPaymentAccepted is an event emitted when a payment is accepted.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `admin` | [string](#string) | | admin is the account with withdraw permission requesting the withdrawal. |
-| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier of the market to withdraw from. |
-| `to_address` | [string](#string) | | to_address is the address that will receive the funds. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the funds to withdraw. |
-
-
-
-
-
-
-
-
-### MsgMarketWithdrawResponse
-MsgMarketWithdrawResponse is a response message for the MarketWithdraw endpoint.
+| `source` | [string](#string) | | source is the account that created the Payment. |
+| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
+| `target` | [string](#string) | | target is the account that accepted the Payment. |
+| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
-
+
-### MsgRejectPaymentRequest
-MsgRejectPaymentRequest is a request message for the RejectPayment endpoint.
+### EventPaymentCancelled
+EventPaymentCancelled is an event emitted when a payment is cancelled (by the source).
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `target` | [string](#string) | | target is the target account of the payment to reject. |
-| `source` | [string](#string) | | source is the source account of the payment to reject. |
-| `external_id` | [string](#string) | | external_id is the external id of the payment to reject. |
+| `source` | [string](#string) | | source is the account that cancelled (and created) the Payment. |
+| `target` | [string](#string) | | target is the account that could have accepted the Payment. |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
-
+
-### MsgRejectPaymentResponse
-MsgRejectPaymentResponse is a response message for the RejectPayment endpoint.
+### EventPaymentCreated
+EventPaymentCreated is an event emitted when a payment is created.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `source` | [string](#string) | | source is the account that created the Payment. |
+| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
+| `target` | [string](#string) | | target is the account that can accept the Payment. |
+| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
-
+
-### MsgRejectPaymentsRequest
-MsgRejectPaymentsRequest is a request message for the RejectPayments endpoint.
+### EventPaymentRejected
+EventPaymentRejected is an event emitted when a payment is rejected (by the target).
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `target` | [string](#string) | | target is the account that wishes to reject some payments. |
-| `sources` | [string](#string) | repeated | sources is the source accounts of the payments to reject. |
+| `source` | [string](#string) | | source is the account that created the Payment. |
+| `target` | [string](#string) | | target is the account that rejected the Payment. |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
-
+
-### MsgRejectPaymentsResponse
-MsgRejectPaymentsResponse is a response message for the RejectPayments endpoint.
+### EventPaymentUpdated
+EventPaymentUpdated is an event emitted when a payment is updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `source` | [string](#string) | | source is the account that updated (and previously created) the Payment. |
+| `source_amount` | [string](#string) | | source_amount is the coins amount string of the funds that the source will pay (to the target). |
+| `old_target` | [string](#string) | | old_target is the account that used to be able to accept the Payment (but not any more). |
+| `new_target` | [string](#string) | | new_target is the account that is now able to accept the Payment. |
+| `target_amount` | [string](#string) | | target_amount is the coins amount string of the funds that the target will pay (to the source). |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment. |
@@ -3220,167 +3206,397 @@ MsgRejectPaymentsResponse is a response message for the RejectPayments endpoint.
-
-
-
-### Msg
-Msg is the service for exchange module's tx endpoints.
-
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `CreateAsk` | [MsgCreateAskRequest](#provenance.exchange.v1.MsgCreateAskRequest) | [MsgCreateAskResponse](#provenance.exchange.v1.MsgCreateAskResponse) | CreateAsk creates an ask order (to sell something you own). | |
-| `CreateBid` | [MsgCreateBidRequest](#provenance.exchange.v1.MsgCreateBidRequest) | [MsgCreateBidResponse](#provenance.exchange.v1.MsgCreateBidResponse) | CreateBid creates a bid order (to buy something you want). | |
-| `CommitFunds` | [MsgCommitFundsRequest](#provenance.exchange.v1.MsgCommitFundsRequest) | [MsgCommitFundsResponse](#provenance.exchange.v1.MsgCommitFundsResponse) | CommitFunds marks funds in an account as manageable by a market. | |
-| `CancelOrder` | [MsgCancelOrderRequest](#provenance.exchange.v1.MsgCancelOrderRequest) | [MsgCancelOrderResponse](#provenance.exchange.v1.MsgCancelOrderResponse) | CancelOrder cancels an order. | |
-| `FillBids` | [MsgFillBidsRequest](#provenance.exchange.v1.MsgFillBidsRequest) | [MsgFillBidsResponse](#provenance.exchange.v1.MsgFillBidsResponse) | FillBids uses the assets in your account to fulfill one or more bids (similar to a fill-or-cancel ask). | |
-| `FillAsks` | [MsgFillAsksRequest](#provenance.exchange.v1.MsgFillAsksRequest) | [MsgFillAsksResponse](#provenance.exchange.v1.MsgFillAsksResponse) | FillAsks uses the funds in your account to fulfill one or more asks (similar to a fill-or-cancel bid). | |
-| `MarketSettle` | [MsgMarketSettleRequest](#provenance.exchange.v1.MsgMarketSettleRequest) | [MsgMarketSettleResponse](#provenance.exchange.v1.MsgMarketSettleResponse) | MarketSettle is a market endpoint to trigger the settlement of orders. | |
-| `MarketCommitmentSettle` | [MsgMarketCommitmentSettleRequest](#provenance.exchange.v1.MsgMarketCommitmentSettleRequest) | [MsgMarketCommitmentSettleResponse](#provenance.exchange.v1.MsgMarketCommitmentSettleResponse) | MarketCommitmentSettle is a market endpoint to transfer committed funds. | |
-| `MarketReleaseCommitments` | [MsgMarketReleaseCommitmentsRequest](#provenance.exchange.v1.MsgMarketReleaseCommitmentsRequest) | [MsgMarketReleaseCommitmentsResponse](#provenance.exchange.v1.MsgMarketReleaseCommitmentsResponse) | MarketReleaseCommitments is a market endpoint return control of funds back to the account owner(s). | |
-| `MarketSetOrderExternalID` | [MsgMarketSetOrderExternalIDRequest](#provenance.exchange.v1.MsgMarketSetOrderExternalIDRequest) | [MsgMarketSetOrderExternalIDResponse](#provenance.exchange.v1.MsgMarketSetOrderExternalIDResponse) | MarketSetOrderExternalID updates an order's external id field. | |
-| `MarketWithdraw` | [MsgMarketWithdrawRequest](#provenance.exchange.v1.MsgMarketWithdrawRequest) | [MsgMarketWithdrawResponse](#provenance.exchange.v1.MsgMarketWithdrawResponse) | MarketWithdraw is a market endpoint to withdraw fees that have been collected. | |
-| `MarketUpdateDetails` | [MsgMarketUpdateDetailsRequest](#provenance.exchange.v1.MsgMarketUpdateDetailsRequest) | [MsgMarketUpdateDetailsResponse](#provenance.exchange.v1.MsgMarketUpdateDetailsResponse) | MarketUpdateDetails is a market endpoint to update its details. | |
-| `MarketUpdateEnabled` | [MsgMarketUpdateEnabledRequest](#provenance.exchange.v1.MsgMarketUpdateEnabledRequest) | [MsgMarketUpdateEnabledResponse](#provenance.exchange.v1.MsgMarketUpdateEnabledResponse) | MarketUpdateEnabled is a market endpoint to update whether its accepting orders. Deprecated: This endpoint is no longer usable. It is replaced by MarketUpdateAcceptingOrders. | |
-| `MarketUpdateAcceptingOrders` | [MsgMarketUpdateAcceptingOrdersRequest](#provenance.exchange.v1.MsgMarketUpdateAcceptingOrdersRequest) | [MsgMarketUpdateAcceptingOrdersResponse](#provenance.exchange.v1.MsgMarketUpdateAcceptingOrdersResponse) | MarketUpdateAcceptingOrders is a market endpoint to update whether its accepting orders. | |
-| `MarketUpdateUserSettle` | [MsgMarketUpdateUserSettleRequest](#provenance.exchange.v1.MsgMarketUpdateUserSettleRequest) | [MsgMarketUpdateUserSettleResponse](#provenance.exchange.v1.MsgMarketUpdateUserSettleResponse) | MarketUpdateUserSettle is a market endpoint to update whether it allows user-initiated settlement. | |
-| `MarketUpdateAcceptingCommitments` | [MsgMarketUpdateAcceptingCommitmentsRequest](#provenance.exchange.v1.MsgMarketUpdateAcceptingCommitmentsRequest) | [MsgMarketUpdateAcceptingCommitmentsResponse](#provenance.exchange.v1.MsgMarketUpdateAcceptingCommitmentsResponse) | MarketUpdateAcceptingCommitments is a market endpoint to update whether it accepts commitments. | |
-| `MarketUpdateIntermediaryDenom` | [MsgMarketUpdateIntermediaryDenomRequest](#provenance.exchange.v1.MsgMarketUpdateIntermediaryDenomRequest) | [MsgMarketUpdateIntermediaryDenomResponse](#provenance.exchange.v1.MsgMarketUpdateIntermediaryDenomResponse) | MarketUpdateIntermediaryDenom sets a market's intermediary denom. | |
-| `MarketManagePermissions` | [MsgMarketManagePermissionsRequest](#provenance.exchange.v1.MsgMarketManagePermissionsRequest) | [MsgMarketManagePermissionsResponse](#provenance.exchange.v1.MsgMarketManagePermissionsResponse) | MarketManagePermissions is a market endpoint to manage a market's user permissions. | |
-| `MarketManageReqAttrs` | [MsgMarketManageReqAttrsRequest](#provenance.exchange.v1.MsgMarketManageReqAttrsRequest) | [MsgMarketManageReqAttrsResponse](#provenance.exchange.v1.MsgMarketManageReqAttrsResponse) | MarketManageReqAttrs is a market endpoint to manage the attributes required to interact with it. | |
-| `CreatePayment` | [MsgCreatePaymentRequest](#provenance.exchange.v1.MsgCreatePaymentRequest) | [MsgCreatePaymentResponse](#provenance.exchange.v1.MsgCreatePaymentResponse) | CreatePayment creates a payment to facilitate a trade between two accounts. | |
-| `AcceptPayment` | [MsgAcceptPaymentRequest](#provenance.exchange.v1.MsgAcceptPaymentRequest) | [MsgAcceptPaymentResponse](#provenance.exchange.v1.MsgAcceptPaymentResponse) | AcceptPayment is used by a target to accept a payment. | |
-| `RejectPayment` | [MsgRejectPaymentRequest](#provenance.exchange.v1.MsgRejectPaymentRequest) | [MsgRejectPaymentResponse](#provenance.exchange.v1.MsgRejectPaymentResponse) | RejectPayment can be used by a target to reject a payment. | |
-| `RejectPayments` | [MsgRejectPaymentsRequest](#provenance.exchange.v1.MsgRejectPaymentsRequest) | [MsgRejectPaymentsResponse](#provenance.exchange.v1.MsgRejectPaymentsResponse) | RejectPayments can be used by a target to reject all payments from one or more sources. | |
-| `CancelPayments` | [MsgCancelPaymentsRequest](#provenance.exchange.v1.MsgCancelPaymentsRequest) | [MsgCancelPaymentsResponse](#provenance.exchange.v1.MsgCancelPaymentsResponse) | CancelPayments can be used by a source to cancel one or more payments. | |
-| `ChangePaymentTarget` | [MsgChangePaymentTargetRequest](#provenance.exchange.v1.MsgChangePaymentTargetRequest) | [MsgChangePaymentTargetResponse](#provenance.exchange.v1.MsgChangePaymentTargetResponse) | ChangePaymentTarget can be used by a source to change the target in one of their payments. | |
-| `GovCreateMarket` | [MsgGovCreateMarketRequest](#provenance.exchange.v1.MsgGovCreateMarketRequest) | [MsgGovCreateMarketResponse](#provenance.exchange.v1.MsgGovCreateMarketResponse) | GovCreateMarket is a governance proposal endpoint for creating a market. | |
-| `GovManageFees` | [MsgGovManageFeesRequest](#provenance.exchange.v1.MsgGovManageFeesRequest) | [MsgGovManageFeesResponse](#provenance.exchange.v1.MsgGovManageFeesResponse) | GovManageFees is a governance proposal endpoint for updating a market's fees. | |
-| `GovCloseMarket` | [MsgGovCloseMarketRequest](#provenance.exchange.v1.MsgGovCloseMarketRequest) | [MsgGovCloseMarketResponse](#provenance.exchange.v1.MsgGovCloseMarketResponse) | GovCloseMarket is a governance proposal endpoint that will disable order and commitment creation, cancel all orders, and release all commitments. | |
-| `GovUpdateParams` | [MsgGovUpdateParamsRequest](#provenance.exchange.v1.MsgGovUpdateParamsRequest) | [MsgGovUpdateParamsResponse](#provenance.exchange.v1.MsgGovUpdateParamsResponse) | GovUpdateParams is a governance proposal endpoint for updating the exchange module's params. | |
-
-
+
Top
-## provenance/exchange/v1/query.proto
+## provenance/exchange/v1/market.proto
-
+
-### QueryCommitmentSettlementFeeCalcRequest
-QueryCommitmentSettlementFeeCalcRequest is a request message for the CommitmentSettlementFeeCalc query.
+### AccessGrant
+AddrPermissions associates an address with a list of permissions available for that address.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `settlement` | [MsgMarketCommitmentSettleRequest](#provenance.exchange.v1.MsgMarketCommitmentSettleRequest) | | settlement is a market's commitment settlement request message. If no inputs are provided, only the to_fee_nav field will be populated in the response. |
-| `include_breakdown_fields` | [bool](#bool) | | include_breakdown_fields controls the fields that are populated in the response. If false, only the exchange_fees field is populated. If true, all of the fields are populated as possible. If the settlement does not have any inputs, this field defaults to true. |
+| `address` | [string](#string) | | address is the address that these permissions apply to. |
+| `permissions` | [Permission](#provenance-exchange-v1-Permission) | repeated | allowed is the list of permissions available for the address. |
-
+
-### QueryCommitmentSettlementFeeCalcResponse
-QueryCommitmentSettlementFeeCalcResponse is a response message for the CommitmentSettlementFeeCalc query.
+### FeeRatio
+FeeRatio defines a ratio of price amount to fee amount.
+For an order to be valid, its price must be evenly divisible by a FeeRatio's price.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `exchange_fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | exchange_fees is the total that the exchange would currently pay for the provided settlement. |
-| `input_total` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | input_total is the sum of all the inputs in the provided settlement. |
-| `converted_total` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | converted_total is the input_total converted to a single intermediary denom or left as the fee denom. |
-| `conversion_navs` | [NetAssetPrice](#provenance.exchange.v1.NetAssetPrice) | repeated | conversion_navs are the NAVs used to convert the input_total to the converted_total. |
-| `to_fee_nav` | [NetAssetPrice](#provenance.exchange.v1.NetAssetPrice) | | to_fee_nav is the NAV used to convert the converted_total into the fee denom. |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is the unit the order price is divided by to get how much of the fee should apply. |
+| `fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | fee is the amount to charge per price unit. |
-
+
-### QueryGetAccountCommitmentsRequest
-QueryGetAccountCommitmentsRequest is a request message for the GetAccountCommitments query.
+### Market
+Market contains all information about a market.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `account` | [string](#string) | | account is the bech32 address string of the account with the commitments. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
+| `market_details` | [MarketDetails](#provenance-exchange-v1-MarketDetails) | | market_details is some information about this market. |
+| `fee_create_ask_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_create_ask_flat is the flat fee charged for creating an ask order. Each coin entry is a separate option. When an ask is created, one of these must be paid. If empty, no fee is required to create an ask order. |
+| `fee_create_bid_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_create_bid_flat is the flat fee charged for creating a bid order. Each coin entry is a separate option. When a bid is created, one of these must be paid. If empty, no fee is required to create a bid order. |
+| `fee_seller_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_seller_settlement_flat is the flat fee charged to the seller during settlement. Each coin entry is a separate option. When an ask is settled, the seller will pay the amount in the denom that matches the price they received. |
+| `fee_seller_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | fee_seller_settlement_ratios is the fee to charge a seller during settlement based on the price they are receiving. The price and fee denoms must be equal for each entry, and only one entry for any given denom is allowed. |
+| `fee_buyer_settlement_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_buyer_settlement_flat is the flat fee charged to the buyer during settlement. Each coin entry is a separate option. When a bid is created, the settlement fees provided must contain one of these. |
+| `fee_buyer_settlement_ratios` | [FeeRatio](#provenance-exchange-v1-FeeRatio) | repeated | fee_buyer_settlement_ratios is the fee to charge a buyer during settlement based on the price they are spending. The price and fee denoms do not have to equal. Multiple entries for any given price or fee denom are allowed, but each price denom to fee denom pair can only have one entry. |
+| `accepting_orders` | [bool](#bool) | | accepting_orders is whether this market is allowing orders to be created for it. |
+| `allow_user_settlement` | [bool](#bool) | | allow_user_settlement is whether this market allows users to initiate their own settlements. For example, the FillBids and FillAsks endpoints are available if and only if this is true. The MarketSettle endpoint is only available to market actors regardless of the value of this field. |
+| `access_grants` | [AccessGrant](#provenance-exchange-v1-AccessGrant) | repeated | access_grants is the list of addresses and permissions granted for this market. |
+| `req_attr_create_ask` | [string](#string) | repeated | req_attr_create_ask is a list of attributes required on an account for it to be allowed to create an ask order. An account must have all of these attributes in order to create an ask order in this market. If the list is empty, any account can create ask orders in this market.
An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "b.x.a", or "c.b.a.x". |
+| `req_attr_create_bid` | [string](#string) | repeated | req_attr_create_ask is a list of attributes required on an account for it to be allowed to create a bid order. An account must have all of these attributes in order to create a bid order in this market. If the list is empty, any account can create bid orders in this market.
An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "c.b.x.a", or "c.b.a.x". |
+| `accepting_commitments` | [bool](#bool) | | accepting_commitments is whether the market is allowing users to commit funds to it. |
+| `fee_create_commitment_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_create_commitment_flat is the flat fee charged for creating a commitment. Each coin entry is a separate option. When a commitment is created, one of these must be paid. If empty, no fee is required to create a commitment. |
+| `commitment_settlement_bips` | [uint32](#uint32) | | commitment_settlement_bips is the fraction of a commitment settlement that will be paid to the exchange. It is represented in basis points (1/100th of 1%, e.g. 0.0001) and is limited to 0 to 10,000 inclusive. During a commitment settlement, the inputs are summed and NAVs are used to convert that total to the intermediary denom, then to the fee denom. That is then multiplied by this value to get the fee amount that will be transferred out of the market's account into the exchange for that settlement.
Summing the inputs effectively doubles the value of the settlement from what what is usually thought of as the value of a trade. That should be taken into account when setting this value. E.g. if two accounts are trading 10apples for 100grapes, the inputs total will be 10apples,100grapes (which might then be converted to USD then nhash before applying this ratio); Usually, though, the value of that trade would be viewed as either just 10apples or just 100grapes. |
+| `intermediary_denom` | [string](#string) | | intermediary_denom is the denom that funds get converted to (before being converted to the chain's fee denom) when calculating the fees that are paid to the exchange. NAVs are used for this conversion and actions will fail if a NAV is needed but not available. |
+| `req_attr_create_commitment` | [string](#string) | repeated | req_attr_create_commitment is a list of attributes required on an account for it to be allowed to create a commitment. An account must have all of these attributes in order to create a commitment in this market. If the list is empty, any account can create commitments in this market.
An entry that starts with "*." will match any attributes that end with the rest of it. E.g. "*.b.a" will match all of "c.b.a", "x.b.a", and "e.d.c.b.a"; but not "b.a", "xb.a", "c.b.x.a", or "c.b.a.x". |
-
+
-### QueryGetAccountCommitmentsResponse
-QueryGetAccountCommitmentsResponse is a response message for the GetAccountCommitments query.
+### MarketAccount
+MarketAccount is an account type for use with the accounts module to hold some basic information about a market.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `commitments` | [MarketAmount](#provenance.exchange.v1.MarketAmount) | repeated | commitments is the amounts committed from the account to the any market. |
+| `base_account` | [cosmos.auth.v1beta1.BaseAccount](#cosmos-auth-v1beta1-BaseAccount) | | base_account is the base cosmos account information. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
+| `market_details` | [MarketDetails](#provenance-exchange-v1-MarketDetails) | | market_details is some human-consumable information about this market. |
-
+
-### QueryGetAllCommitmentsRequest
-QueryGetAllCommitmentsRequest is a request message for the GetAllCommitments query.
+### MarketBrief
+MarketBrief is a message containing brief, superficial information about a market.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `market_id` | [uint32](#uint32) | | market_id is the numerical identifier for this market. |
+| `market_address` | [string](#string) | | market_address is the bech32 address string of this market's account. |
+| `market_details` | [MarketDetails](#provenance-exchange-v1-MarketDetails) | | market_details is some information about this market. |
-
+
-### QueryGetAllCommitmentsResponse
-QueryGetAllCommitmentsResponse is a response message for the GetAllCommitments query.
+### MarketDetails
+MarketDetails contains information about a market.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `commitments` | [Commitment](#provenance.exchange.v1.Commitment) | repeated | commitments is the requested commitment information. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `name` | [string](#string) | | name is a moniker that people can use to refer to this market. |
+| `description` | [string](#string) | | description extra information about this market. The field is meant to be human-readable. |
+| `website_url` | [string](#string) | | website_url is a url people can use to get to this market, or at least get more information about this market. |
+| `icon_uri` | [string](#string) | | icon_uri is a uri for an icon to associate with this market. |
+
-
-### QueryGetAllMarketsRequest
+
+
+### Permission
+Permission defines the different types of permission that can be given to an account for a market.
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `PERMISSION_UNSPECIFIED` | `0` | PERMISSION_UNSPECIFIED is the zero-value Permission; it is an error to use it. |
+| `PERMISSION_SETTLE` | `1` | PERMISSION_SETTLE is the ability to use the Settle Tx endpoint on behalf of a market. |
+| `PERMISSION_SET_IDS` | `2` | PERMISSION_SET_IDS is the ability to use the SetOrderExternalID Tx endpoint on behalf of a market. |
+| `PERMISSION_CANCEL` | `3` | PERMISSION_CANCEL is the ability to use the Cancel Tx endpoint on behalf of a market. |
+| `PERMISSION_WITHDRAW` | `4` | PERMISSION_WITHDRAW is the ability to use the MarketWithdraw Tx endpoint. |
+| `PERMISSION_UPDATE` | `5` | PERMISSION_UPDATE is the ability to use the MarketUpdate* Tx endpoints. |
+| `PERMISSION_PERMISSIONS` | `6` | PERMISSION_PERMISSIONS is the ability to use the MarketManagePermissions Tx endpoint. |
+| `PERMISSION_ATTRIBUTES` | `7` | PERMISSION_ATTRIBUTES is the ability to use the MarketManageReqAttrs Tx endpoint. |
+
+
+
+
+
+
+
+
+
+
+
+Top
+
+## provenance/exchange/v1/payments.proto
+
+
+
+
+
+### Payment
+Payment represents one account's desire to trade funds with another account.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `source` | [string](#string) | | source is the account that created this Payment. It is considered the owner of the payment. |
+| `source_amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | source_amount is the funds that the source is will pay the target in exchange for the target_amount. A hold will be placed on this amount in the source account until this Payment is accepted, rejected or cancelled. If the source_amount is zero, this Payment can be considered a "payment request." |
+| `target` | [string](#string) | | target is the account that can accept this Payment. The target is the only thing allowed to change in a payment. I.e. it can be empty initially and updated later as needed. |
+| `target_amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | target_amount is the funds that the target will pay the source in exchange for the source_amount. If the target_amount is zero, this Payment can be considered a "peer-to-peer (P2P) payment." |
+| `external_id` | [string](#string) | | external_id is used along with the source to uniquely identify this Payment.
A source can only have one Payment with any given external id. A source can have two payments with two different external ids. Two different sources can each have a payment with the same external id. But a source cannot have two different payments each with the same external id.
An external id can be reused by a source once the payment is accepted, rejected, or cancelled.
The external id is limited to 100 bytes. An empty string is a valid external id. |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Top
+
+## provenance/exchange/v1/commitments.proto
+
+
+
+
+
+### AccountAmount
+AccountAmount associates an account with a coins amount.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | account is the bech32 address string of the account associated with the amount. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the funds associated with the address. |
+
+
+
+
+
+
+
+
+### Commitment
+Commitment contains information on committed funds.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | account is the bech32 address string with the committed funds. |
+| `market_id` | [uint32](#uint32) | | market_id is the numeric identifier of the market the funds are committed to. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the funds that have been committed by the account to the market. |
+
+
+
+
+
+
+
+
+### MarketAmount
+MarketAmount associates a market with a coins amount.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id is the numeric identifier the amount has been committed to. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the funds associated with the address. |
+
+
+
+
+
+
+
+
+### NetAssetPrice
+NetAssetPrice is an association of assets and price used to record the value of things.
+It is related to the NetAssetValue message from the x/marker module, and is therefore often referred to as "a NAV".
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `assets` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | assets is the volume and denom that has been bought or sold. |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is what was paid for the assets. |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Top
+
+## provenance/exchange/v1/query.proto
+
+
+
+
+
+### QueryCommitmentSettlementFeeCalcRequest
+QueryCommitmentSettlementFeeCalcRequest is a request message for the CommitmentSettlementFeeCalc query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `settlement` | [MsgMarketCommitmentSettleRequest](#provenance-exchange-v1-MsgMarketCommitmentSettleRequest) | | settlement is a market's commitment settlement request message. If no inputs are provided, only the to_fee_nav field will be populated in the response. |
+| `include_breakdown_fields` | [bool](#bool) | | include_breakdown_fields controls the fields that are populated in the response. If false, only the exchange_fees field is populated. If true, all of the fields are populated as possible. If the settlement does not have any inputs, this field defaults to true. |
+
+
+
+
+
+
+
+
+### QueryCommitmentSettlementFeeCalcResponse
+QueryCommitmentSettlementFeeCalcResponse is a response message for the CommitmentSettlementFeeCalc query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `exchange_fees` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | exchange_fees is the total that the exchange would currently pay for the provided settlement. |
+| `input_total` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | input_total is the sum of all the inputs in the provided settlement. |
+| `converted_total` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | converted_total is the input_total converted to a single intermediary denom or left as the fee denom. |
+| `conversion_navs` | [NetAssetPrice](#provenance-exchange-v1-NetAssetPrice) | repeated | conversion_navs are the NAVs used to convert the input_total to the converted_total. |
+| `to_fee_nav` | [NetAssetPrice](#provenance-exchange-v1-NetAssetPrice) | | to_fee_nav is the NAV used to convert the converted_total into the fee denom. |
+
+
+
+
+
+
+
+
+### QueryGetAccountCommitmentsRequest
+QueryGetAccountCommitmentsRequest is a request message for the GetAccountCommitments query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | account is the bech32 address string of the account with the commitments. |
+
+
+
+
+
+
+
+
+### QueryGetAccountCommitmentsResponse
+QueryGetAccountCommitmentsResponse is a response message for the GetAccountCommitments query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `commitments` | [MarketAmount](#provenance-exchange-v1-MarketAmount) | repeated | commitments is the amounts committed from the account to the any market. |
+
+
+
+
+
+
+
+
+### QueryGetAllCommitmentsRequest
+QueryGetAllCommitmentsRequest is a request message for the GetAllCommitments query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
+
+
+
+
+
+
+
+
+### QueryGetAllCommitmentsResponse
+QueryGetAllCommitmentsResponse is a response message for the GetAllCommitments query.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `commitments` | [Commitment](#provenance-exchange-v1-Commitment) | repeated | commitments is the requested commitment information. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
+
+
+
+
+
+
+
+
+### QueryGetAllMarketsRequest
QueryGetAllMarketsRequest is a request message for the GetAllMarkets query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetAllMarketsResponse
QueryGetAllMarketsResponse is a response message for the GetAllMarkets query.
@@ -3388,15 +3604,15 @@ QueryGetAllMarketsResponse is a response message for the GetAllMarkets query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `markets` | [MarketBrief](#provenance.exchange.v1.MarketBrief) | repeated | markets are a page of the briefs for all markets. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `markets` | [MarketBrief](#provenance-exchange-v1-MarketBrief) | repeated | markets are a page of the briefs for all markets. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetAllOrdersRequest
QueryGetAllOrdersRequest is a request message for the GetAllOrders query.
@@ -3404,14 +3620,14 @@ QueryGetAllOrdersRequest is a request message for the GetAllOrders query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetAllOrdersResponse
QueryGetAllOrdersResponse is a response message for the GetAllOrders query.
@@ -3419,15 +3635,15 @@ QueryGetAllOrdersResponse is a response message for the GetAllOrders query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `orders` | [Order](#provenance.exchange.v1.Order) | repeated | orders are a page of the all orders. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `orders` | [Order](#provenance-exchange-v1-Order) | repeated | orders are a page of the all orders. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetAllPaymentsRequest
QueryGetAllPaymentsRequest is a request message for the GetAllPayments query.
@@ -3435,14 +3651,14 @@ QueryGetAllPaymentsRequest is a request message for the GetAllPayments query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetAllPaymentsResponse
QueryGetAllPaymentsResponse is a response message for the GetAllPayments query.
@@ -3450,15 +3666,15 @@ QueryGetAllPaymentsResponse is a response message for the GetAllPayments query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payments` | [Payment](#provenance.exchange.v1.Payment) | repeated | payments is all the payments on this page of results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `payments` | [Payment](#provenance-exchange-v1-Payment) | repeated | payments is all the payments on this page of results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetAssetOrdersRequest
QueryGetAssetOrdersRequest is a request message for the GetAssetOrders query.
@@ -3469,14 +3685,14 @@ QueryGetAssetOrdersRequest is a request message for the GetAssetOrders query.
| `asset` | [string](#string) | | asset is the denom of assets to get orders for. |
| `order_type` | [string](#string) | | order_type is optional and can limit orders to only "ask" or "bid" orders. |
| `after_order_id` | [uint64](#uint64) | | after_order_id is a minimum (exclusive) order id. All results will be strictly greater than this. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetAssetOrdersResponse
QueryGetAssetOrdersResponse is a response message for the GetAssetOrders query.
@@ -3484,15 +3700,15 @@ QueryGetAssetOrdersResponse is a response message for the GetAssetOrders query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `orders` | [Order](#provenance.exchange.v1.Order) | repeated | orders are a page of the orders for the provided asset. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `orders` | [Order](#provenance-exchange-v1-Order) | repeated | orders are a page of the orders for the provided asset. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetCommitmentRequest
QueryGetCommitmentRequest is a request message for the GetCommitment query.
@@ -3508,7 +3724,7 @@ QueryGetCommitmentRequest is a request message for the GetCommitment query.
-
+
### QueryGetCommitmentResponse
QueryGetCommitmentResponse is a response message for the GetCommitment query.
@@ -3516,14 +3732,14 @@ QueryGetCommitmentResponse is a response message for the GetCommitment query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the total funds committed to the market by the account. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the total funds committed to the market by the account. |
-
+
### QueryGetMarketCommitmentsRequest
QueryGetMarketCommitmentsRequest is a request message for the GetMarketCommitments query.
@@ -3532,14 +3748,14 @@ QueryGetMarketCommitmentsRequest is a request message for the GetMarketCommitmen
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `market_id` | [uint32](#uint32) | | market_id is the numeric identifier of the market with the commitment. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetMarketCommitmentsResponse
QueryGetMarketCommitmentsResponse is a response message for the GetMarketCommitments query.
@@ -3547,15 +3763,15 @@ QueryGetMarketCommitmentsResponse is a response message for the GetMarketCommitm
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `commitments` | [AccountAmount](#provenance.exchange.v1.AccountAmount) | repeated | commitments is the amounts committed to the market from any account. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `commitments` | [AccountAmount](#provenance-exchange-v1-AccountAmount) | repeated | commitments is the amounts committed to the market from any account. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetMarketOrdersRequest
QueryGetMarketOrdersRequest is a request message for the GetMarketOrders query.
@@ -3566,14 +3782,14 @@ QueryGetMarketOrdersRequest is a request message for the GetMarketOrders query.
| `market_id` | [uint32](#uint32) | | market_id is the id of the market to get all the orders for. |
| `order_type` | [string](#string) | | order_type is optional and can limit orders to only "ask" or "bid" orders. |
| `after_order_id` | [uint64](#uint64) | | after_order_id is a minimum (exclusive) order id. All results will be strictly greater than this. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetMarketOrdersResponse
QueryGetMarketOrdersResponse is a response message for the GetMarketOrders query.
@@ -3581,15 +3797,15 @@ QueryGetMarketOrdersResponse is a response message for the GetMarketOrders query
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `orders` | [Order](#provenance.exchange.v1.Order) | repeated | orders are a page of the orders in the provided market. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `orders` | [Order](#provenance-exchange-v1-Order) | repeated | orders are a page of the orders in the provided market. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetMarketRequest
QueryGetMarketRequest is a request message for the GetMarket query.
@@ -3604,7 +3820,7 @@ QueryGetMarketRequest is a request message for the GetMarket query.
-
+
### QueryGetMarketResponse
QueryGetMarketResponse is a response message for the GetMarket query.
@@ -3613,14 +3829,14 @@ QueryGetMarketResponse is a response message for the GetMarket query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `address` | [string](#string) | | address is the bech32 address string of this market's account. |
-| `market` | [Market](#provenance.exchange.v1.Market) | | market is all information and details of the market. |
+| `market` | [Market](#provenance-exchange-v1-Market) | | market is all information and details of the market. |
-
+
### QueryGetOrderByExternalIDRequest
QueryGetOrderByExternalIDRequest is a request message for the GetOrderByExternalID query.
@@ -3636,7 +3852,7 @@ QueryGetOrderByExternalIDRequest is a request message for the GetOrderByExternal
-
+
### QueryGetOrderByExternalIDResponse
QueryGetOrderByExternalIDResponse is a response message for the GetOrderByExternalID query.
@@ -3644,14 +3860,14 @@ QueryGetOrderByExternalIDResponse is a response message for the GetOrderByExtern
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order` | [Order](#provenance.exchange.v1.Order) | | order is the requested order. |
+| `order` | [Order](#provenance-exchange-v1-Order) | | order is the requested order. |
-
+
### QueryGetOrderRequest
QueryGetOrderRequest is a request message for the GetOrder query.
@@ -3666,7 +3882,7 @@ QueryGetOrderRequest is a request message for the GetOrder query.
-
+
### QueryGetOrderResponse
QueryGetOrderResponse is a response message for the GetOrder query.
@@ -3674,14 +3890,14 @@ QueryGetOrderResponse is a response message for the GetOrder query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `order` | [Order](#provenance.exchange.v1.Order) | | order is the requested order. |
+| `order` | [Order](#provenance-exchange-v1-Order) | | order is the requested order. |
-
+
### QueryGetOwnerOrdersRequest
QueryGetOwnerOrdersRequest is a request message for the GetOwnerOrders query.
@@ -3692,14 +3908,14 @@ QueryGetOwnerOrdersRequest is a request message for the GetOwnerOrders query.
| `owner` | [string](#string) | | owner is the bech32 address string of the owner to get the orders for. |
| `order_type` | [string](#string) | | order_type is optional and can limit orders to only "ask" or "bid" orders. |
| `after_order_id` | [uint64](#uint64) | | after_order_id is a minimum (exclusive) order id. All results will be strictly greater than this. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetOwnerOrdersResponse
QueryGetOwnerOrdersResponse is a response message for the GetOwnerOrders query.
@@ -3707,15 +3923,15 @@ QueryGetOwnerOrdersResponse is a response message for the GetOwnerOrders query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `orders` | [Order](#provenance.exchange.v1.Order) | repeated | orders are a page of the orders for the provided address. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `orders` | [Order](#provenance-exchange-v1-Order) | repeated | orders are a page of the orders for the provided address. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetPaymentRequest
QueryGetPaymentRequest is a request message for the GetPayment query.
@@ -3731,7 +3947,7 @@ QueryGetPaymentRequest is a request message for the GetPayment query.
-
+
### QueryGetPaymentResponse
QueryGetPaymentResponse is a response message for the GetPayment query.
@@ -3739,14 +3955,14 @@ QueryGetPaymentResponse is a response message for the GetPayment query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payment` | [Payment](#provenance.exchange.v1.Payment) | | payment is the info on the requested payment. |
+| `payment` | [Payment](#provenance-exchange-v1-Payment) | | payment is the info on the requested payment. |
-
+
### QueryGetPaymentsWithSourceRequest
QueryGetPaymentsWithSourceRequest is a request message for the GetPaymentsWithSource query.
@@ -3755,14 +3971,14 @@ QueryGetPaymentsWithSourceRequest is a request message for the GetPaymentsWithSo
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `source` | [string](#string) | | source is the source account of the payments to get. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetPaymentsWithSourceResponse
QueryGetPaymentsWithSourceResponse is a response message for the GetPaymentsWithSource query.
@@ -3770,15 +3986,15 @@ QueryGetPaymentsWithSourceResponse is a response message for the GetPaymentsWith
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payments` | [Payment](#provenance.exchange.v1.Payment) | repeated | payments is all the payments with the requested source. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `payments` | [Payment](#provenance-exchange-v1-Payment) | repeated | payments is all the payments with the requested source. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryGetPaymentsWithTargetRequest
QueryGetPaymentsWithTargetRequest is a request message for the GetPaymentsWithTarget query.
@@ -3787,14 +4003,14 @@ QueryGetPaymentsWithTargetRequest is a request message for the GetPaymentsWithTa
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `target` | [string](#string) | | target is the target account of the payments to get. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
### QueryGetPaymentsWithTargetResponse
QueryGetPaymentsWithTargetResponse is a response message for the GetPaymentsWithTarget query.
@@ -3802,15 +4018,15 @@ QueryGetPaymentsWithTargetResponse is a response message for the GetPaymentsWith
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payments` | [Payment](#provenance.exchange.v1.Payment) | repeated | payments is all the payments with the requested target. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination is the resulting pagination parameters. |
+| `payments` | [Payment](#provenance-exchange-v1-Payment) | repeated | payments is all the payments with the requested target. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination is the resulting pagination parameters. |
-
+
### QueryOrderFeeCalcRequest
QueryOrderFeeCalcRequest is a request message for the OrderFeeCalc query.
@@ -3819,15 +4035,15 @@ Exactly one of ask_order or bid_order must be provided.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `ask_order` | [AskOrder](#provenance.exchange.v1.AskOrder) | | ask_order is the ask order to calculate the fees for. |
-| `bid_order` | [BidOrder](#provenance.exchange.v1.BidOrder) | | bid_order is the bid order to calculate the fees for. |
+| `ask_order` | [AskOrder](#provenance-exchange-v1-AskOrder) | | ask_order is the ask order to calculate the fees for. |
+| `bid_order` | [BidOrder](#provenance-exchange-v1-BidOrder) | | bid_order is the bid order to calculate the fees for. |
-
+
### QueryOrderFeeCalcResponse
QueryOrderFeeCalcResponse is a response message for the OrderFeeCalc query.
@@ -3835,20 +4051,16 @@ QueryOrderFeeCalcResponse is a response message for the OrderFeeCalc query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `creation_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | creation_fee_options are the order creation flat fee options available for creating the provided order. If it's empty, no order creation fee is required. When creating the order, you should include exactly one of these. |
-| `settlement_flat_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | settlement_flat_fee_options are the settlement flat fee options available for the provided order. If it's empty, no settlement flat fee is required. When creating an order, you should include exactly one of these in the settlement fees field. |
-| `settlement_ratio_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | settlement_ratio_fee_options are the settlement ratio fee options available for the provided order. If it's empty, no settlement ratio fee is required.
-
-If the provided order was a bid order, you should include exactly one of these in the settlement fees field. If the flat and ratio options you've chose have the same denom, a single entry should be included with their sum.
-
-If the provided order was an ask order, these are purely informational and represent how much will be removed from your price if it settles at that price. If it settles for more, the actual amount will probably be larger. |
+| `creation_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | creation_fee_options are the order creation flat fee options available for creating the provided order. If it's empty, no order creation fee is required. When creating the order, you should include exactly one of these. |
+| `settlement_flat_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | settlement_flat_fee_options are the settlement flat fee options available for the provided order. If it's empty, no settlement flat fee is required. When creating an order, you should include exactly one of these in the settlement fees field. |
+| `settlement_ratio_fee_options` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | settlement_ratio_fee_options are the settlement ratio fee options available for the provided order. If it's empty, no settlement ratio fee is required.
If the provided order was a bid order, you should include exactly one of these in the settlement fees field. If the flat and ratio options you've chose have the same denom, a single entry should be included with their sum.
If the provided order was an ask order, these are purely informational and represent how much will be removed from your price if it settles at that price. If it settles for more, the actual amount will probably be larger. |
-
+
### QueryParamsRequest
QueryParamsRequest is a request message for the Params query.
@@ -3858,7 +4070,7 @@ QueryParamsRequest is a request message for the Params query.
-
+
### QueryParamsResponse
QueryParamsResponse is a response message for the Params query.
@@ -3866,14 +4078,14 @@ QueryParamsResponse is a response message for the Params query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.exchange.v1.Params) | | params are the exchange module parameter values. |
+| `params` | [Params](#provenance-exchange-v1-Params) | | params are the exchange module parameter values. |
-
+
### QueryPaymentFeeCalcRequest
QueryPaymentFeeCalcRequest is a request message for the PaymentFeeCalc query.
@@ -3881,14 +4093,14 @@ QueryPaymentFeeCalcRequest is a request message for the PaymentFeeCalc query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `payment` | [Payment](#provenance.exchange.v1.Payment) | | payment is the details of the payment to create or accept. |
+| `payment` | [Payment](#provenance-exchange-v1-Payment) | | payment is the details of the payment to create or accept. |
-
+
### QueryPaymentFeeCalcResponse
QueryPaymentFeeCalcResponse is a response message for the PaymentFeeCalc query.
@@ -3896,15 +4108,15 @@ QueryPaymentFeeCalcResponse is a response message for the PaymentFeeCalc query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `fee_create` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_create is the fee required to create the provided payment. |
-| `fee_accept` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | fee_accept is the fee required to accept the provided payment. |
+| `fee_create` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_create is the fee required to create the provided payment. |
+| `fee_accept` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_accept is the fee required to accept the provided payment. |
-
+
### QueryValidateCreateMarketRequest
QueryValidateCreateMarketRequest is a request message for the ValidateCreateMarket query.
@@ -3912,14 +4124,14 @@ QueryValidateCreateMarketRequest is a request message for the ValidateCreateMark
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `create_market_request` | [MsgGovCreateMarketRequest](#provenance.exchange.v1.MsgGovCreateMarketRequest) | | create_market_request is the request to run validation on. |
+| `create_market_request` | [MsgGovCreateMarketRequest](#provenance-exchange-v1-MsgGovCreateMarketRequest) | | create_market_request is the request to run validation on. |
-
+
### QueryValidateCreateMarketResponse
QueryValidateCreateMarketResponse is a response message for the ValidateCreateMarket query.
@@ -3935,7 +4147,7 @@ QueryValidateCreateMarketResponse is a response message for the ValidateCreateMa
-
+
### QueryValidateManageFeesRequest
QueryValidateManageFeesRequest is a request message for the ValidateManageFees query.
@@ -3943,14 +4155,14 @@ QueryValidateManageFeesRequest is a request message for the ValidateManageFees q
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `manage_fees_request` | [MsgGovManageFeesRequest](#provenance.exchange.v1.MsgGovManageFeesRequest) | | manage_fees_request is the request to run validation on. |
+| `manage_fees_request` | [MsgGovManageFeesRequest](#provenance-exchange-v1-MsgGovManageFeesRequest) | | manage_fees_request is the request to run validation on. |
-
+
### QueryValidateManageFeesResponse
QueryValidateManageFeesResponse is a response message for the ValidateManageFees query.
@@ -3966,7 +4178,7 @@ QueryValidateManageFeesResponse is a response message for the ValidateManageFees
-
+
### QueryValidateMarketRequest
QueryValidateMarketRequest is a request message for the ValidateMarket query.
@@ -3981,7 +4193,7 @@ QueryValidateMarketRequest is a request message for the ValidateMarket query.
-
+
### QueryValidateMarketResponse
QueryValidateMarketResponse is a response message for the ValidateMarket query.
@@ -4002,138 +4214,138 @@ QueryValidateMarketResponse is a response message for the ValidateMarket query.
-
+
### Query
Query is the service for exchange module's query endpoints.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `OrderFeeCalc` | [QueryOrderFeeCalcRequest](#provenance.exchange.v1.QueryOrderFeeCalcRequest) | [QueryOrderFeeCalcResponse](#provenance.exchange.v1.QueryOrderFeeCalcResponse) | OrderFeeCalc calculates the fees that will be associated with the provided order. | GET|/provenance/exchange/v1/fees/order|
-| `GetOrder` | [QueryGetOrderRequest](#provenance.exchange.v1.QueryGetOrderRequest) | [QueryGetOrderResponse](#provenance.exchange.v1.QueryGetOrderResponse) | GetOrder looks up an order by id. | GET|/provenance/exchange/v1/order/{order_id}|
-| `GetOrderByExternalID` | [QueryGetOrderByExternalIDRequest](#provenance.exchange.v1.QueryGetOrderByExternalIDRequest) | [QueryGetOrderByExternalIDResponse](#provenance.exchange.v1.QueryGetOrderByExternalIDResponse) | GetOrderByExternalID looks up an order by market id and external id. | GET|/provenance/exchange/v1/orders/market/{market_id}/{external_id}GET|/provenance/exchange/v1/market/{market_id}/order/{external_id}|
-| `GetMarketOrders` | [QueryGetMarketOrdersRequest](#provenance.exchange.v1.QueryGetMarketOrdersRequest) | [QueryGetMarketOrdersResponse](#provenance.exchange.v1.QueryGetMarketOrdersResponse) | GetMarketOrders looks up the orders in a market. | GET|/provenance/exchange/v1/orders/market/{market_id}GET|/provenance/exchange/v1/market/{market_id}/orders|
-| `GetOwnerOrders` | [QueryGetOwnerOrdersRequest](#provenance.exchange.v1.QueryGetOwnerOrdersRequest) | [QueryGetOwnerOrdersResponse](#provenance.exchange.v1.QueryGetOwnerOrdersResponse) | GetOwnerOrders looks up the orders from the provided owner address. | GET|/provenance/exchange/v1/orders/owner/{owner}|
-| `GetAssetOrders` | [QueryGetAssetOrdersRequest](#provenance.exchange.v1.QueryGetAssetOrdersRequest) | [QueryGetAssetOrdersResponse](#provenance.exchange.v1.QueryGetAssetOrdersResponse) | GetAssetOrders looks up the orders for a specific asset denom. | GET|/provenance/exchange/v1/orders/asset/{asset}|
-| `GetAllOrders` | [QueryGetAllOrdersRequest](#provenance.exchange.v1.QueryGetAllOrdersRequest) | [QueryGetAllOrdersResponse](#provenance.exchange.v1.QueryGetAllOrdersResponse) | GetAllOrders gets all orders in the exchange module. | GET|/provenance/exchange/v1/orders|
-| `GetCommitment` | [QueryGetCommitmentRequest](#provenance.exchange.v1.QueryGetCommitmentRequest) | [QueryGetCommitmentResponse](#provenance.exchange.v1.QueryGetCommitmentResponse) | GetCommitment gets the funds in an account that are committed to the market. | GET|/provenance/exchange/v1/market/{market_id}/commitment/{account}|
-| `GetAccountCommitments` | [QueryGetAccountCommitmentsRequest](#provenance.exchange.v1.QueryGetAccountCommitmentsRequest) | [QueryGetAccountCommitmentsResponse](#provenance.exchange.v1.QueryGetAccountCommitmentsResponse) | GetAccountCommitments gets all the funds in an account that are committed to any market. | GET|/provenance/exchange/v1/commitments/account/{account}|
-| `GetMarketCommitments` | [QueryGetMarketCommitmentsRequest](#provenance.exchange.v1.QueryGetMarketCommitmentsRequest) | [QueryGetMarketCommitmentsResponse](#provenance.exchange.v1.QueryGetMarketCommitmentsResponse) | GetMarketCommitments gets all the funds committed to a market from any account. | GET|/provenance/exchange/v1/commitments/market/{market_id}GET|/provenance/exchange/v1/market/{market_id}/commitments|
-| `GetAllCommitments` | [QueryGetAllCommitmentsRequest](#provenance.exchange.v1.QueryGetAllCommitmentsRequest) | [QueryGetAllCommitmentsResponse](#provenance.exchange.v1.QueryGetAllCommitmentsResponse) | GetAllCommitments gets all fund committed to any market from any account. | GET|/provenance/exchange/v1/commitments|
-| `GetMarket` | [QueryGetMarketRequest](#provenance.exchange.v1.QueryGetMarketRequest) | [QueryGetMarketResponse](#provenance.exchange.v1.QueryGetMarketResponse) | GetMarket returns all the information and details about a market. | GET|/provenance/exchange/v1/market/{market_id}|
-| `GetAllMarkets` | [QueryGetAllMarketsRequest](#provenance.exchange.v1.QueryGetAllMarketsRequest) | [QueryGetAllMarketsResponse](#provenance.exchange.v1.QueryGetAllMarketsResponse) | GetAllMarkets returns brief information about each market. | GET|/provenance/exchange/v1/markets|
-| `Params` | [QueryParamsRequest](#provenance.exchange.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.exchange.v1.QueryParamsResponse) | Params returns the exchange module parameters. | GET|/provenance/exchange/v1/params|
-| `CommitmentSettlementFeeCalc` | [QueryCommitmentSettlementFeeCalcRequest](#provenance.exchange.v1.QueryCommitmentSettlementFeeCalcRequest) | [QueryCommitmentSettlementFeeCalcResponse](#provenance.exchange.v1.QueryCommitmentSettlementFeeCalcResponse) | CommitmentSettlementFeeCalc calculates the fees a market will pay for a commitment settlement using current NAVs. | GET|/provenance/exchange/v1/fees/commitment_settlement|
-| `ValidateCreateMarket` | [QueryValidateCreateMarketRequest](#provenance.exchange.v1.QueryValidateCreateMarketRequest) | [QueryValidateCreateMarketResponse](#provenance.exchange.v1.QueryValidateCreateMarketResponse) | ValidateCreateMarket checks the provided MsgGovCreateMarketResponse and returns any errors it might have. | GET|/provenance/exchange/v1/validate/create_market|
-| `ValidateMarket` | [QueryValidateMarketRequest](#provenance.exchange.v1.QueryValidateMarketRequest) | [QueryValidateMarketResponse](#provenance.exchange.v1.QueryValidateMarketResponse) | ValidateMarket checks for any problems with a market's setup. | GET|/provenance/exchange/v1/validate/market/{market_id}GET|/provenance/exchange/v1/market/{market_id}/validate|
-| `ValidateManageFees` | [QueryValidateManageFeesRequest](#provenance.exchange.v1.QueryValidateManageFeesRequest) | [QueryValidateManageFeesResponse](#provenance.exchange.v1.QueryValidateManageFeesResponse) | ValidateManageFees checks the provided MsgGovManageFeesRequest and returns any errors that it might have. | GET|/provenance/exchange/v1/validate/manage_fees|
-| `GetPayment` | [QueryGetPaymentRequest](#provenance.exchange.v1.QueryGetPaymentRequest) | [QueryGetPaymentResponse](#provenance.exchange.v1.QueryGetPaymentResponse) | GetPayment gets a single specific payment. | GET|/provenance/exchange/v1/paymentGET|/provenance/exchange/v1/payment/{source}GET|/provenance/exchange/v1/payment/{source}/{external_id}|
-| `GetPaymentsWithSource` | [QueryGetPaymentsWithSourceRequest](#provenance.exchange.v1.QueryGetPaymentsWithSourceRequest) | [QueryGetPaymentsWithSourceResponse](#provenance.exchange.v1.QueryGetPaymentsWithSourceResponse) | GetPaymentsWithSource gets all payments with a specific source account. | GET|/provenance/exchange/v1/payments/source/{source}|
-| `GetPaymentsWithTarget` | [QueryGetPaymentsWithTargetRequest](#provenance.exchange.v1.QueryGetPaymentsWithTargetRequest) | [QueryGetPaymentsWithTargetResponse](#provenance.exchange.v1.QueryGetPaymentsWithTargetResponse) | GetPaymentsWithTarget gets all payments with a specific target account. | GET|/provenance/exchange/v1/payments/target/{target}|
-| `GetAllPayments` | [QueryGetAllPaymentsRequest](#provenance.exchange.v1.QueryGetAllPaymentsRequest) | [QueryGetAllPaymentsResponse](#provenance.exchange.v1.QueryGetAllPaymentsResponse) | GetAllPayments gets all payments. | GET|/provenance/exchange/v1/payments|
-| `PaymentFeeCalc` | [QueryPaymentFeeCalcRequest](#provenance.exchange.v1.QueryPaymentFeeCalcRequest) | [QueryPaymentFeeCalcResponse](#provenance.exchange.v1.QueryPaymentFeeCalcResponse) | PaymentFeeCalc calculates the fees that must be paid for creating or accepting a specific payment. | GET|/provenance/exchange/v1/fees/payment|
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `OrderFeeCalc` | [QueryOrderFeeCalcRequest](#provenance-exchange-v1-QueryOrderFeeCalcRequest) | [QueryOrderFeeCalcResponse](#provenance-exchange-v1-QueryOrderFeeCalcResponse) | OrderFeeCalc calculates the fees that will be associated with the provided order. |
+| `GetOrder` | [QueryGetOrderRequest](#provenance-exchange-v1-QueryGetOrderRequest) | [QueryGetOrderResponse](#provenance-exchange-v1-QueryGetOrderResponse) | GetOrder looks up an order by id. |
+| `GetOrderByExternalID` | [QueryGetOrderByExternalIDRequest](#provenance-exchange-v1-QueryGetOrderByExternalIDRequest) | [QueryGetOrderByExternalIDResponse](#provenance-exchange-v1-QueryGetOrderByExternalIDResponse) | GetOrderByExternalID looks up an order by market id and external id. |
+| `GetMarketOrders` | [QueryGetMarketOrdersRequest](#provenance-exchange-v1-QueryGetMarketOrdersRequest) | [QueryGetMarketOrdersResponse](#provenance-exchange-v1-QueryGetMarketOrdersResponse) | GetMarketOrders looks up the orders in a market. |
+| `GetOwnerOrders` | [QueryGetOwnerOrdersRequest](#provenance-exchange-v1-QueryGetOwnerOrdersRequest) | [QueryGetOwnerOrdersResponse](#provenance-exchange-v1-QueryGetOwnerOrdersResponse) | GetOwnerOrders looks up the orders from the provided owner address. |
+| `GetAssetOrders` | [QueryGetAssetOrdersRequest](#provenance-exchange-v1-QueryGetAssetOrdersRequest) | [QueryGetAssetOrdersResponse](#provenance-exchange-v1-QueryGetAssetOrdersResponse) | GetAssetOrders looks up the orders for a specific asset denom. |
+| `GetAllOrders` | [QueryGetAllOrdersRequest](#provenance-exchange-v1-QueryGetAllOrdersRequest) | [QueryGetAllOrdersResponse](#provenance-exchange-v1-QueryGetAllOrdersResponse) | GetAllOrders gets all orders in the exchange module. |
+| `GetCommitment` | [QueryGetCommitmentRequest](#provenance-exchange-v1-QueryGetCommitmentRequest) | [QueryGetCommitmentResponse](#provenance-exchange-v1-QueryGetCommitmentResponse) | GetCommitment gets the funds in an account that are committed to the market. |
+| `GetAccountCommitments` | [QueryGetAccountCommitmentsRequest](#provenance-exchange-v1-QueryGetAccountCommitmentsRequest) | [QueryGetAccountCommitmentsResponse](#provenance-exchange-v1-QueryGetAccountCommitmentsResponse) | GetAccountCommitments gets all the funds in an account that are committed to any market. |
+| `GetMarketCommitments` | [QueryGetMarketCommitmentsRequest](#provenance-exchange-v1-QueryGetMarketCommitmentsRequest) | [QueryGetMarketCommitmentsResponse](#provenance-exchange-v1-QueryGetMarketCommitmentsResponse) | GetMarketCommitments gets all the funds committed to a market from any account. |
+| `GetAllCommitments` | [QueryGetAllCommitmentsRequest](#provenance-exchange-v1-QueryGetAllCommitmentsRequest) | [QueryGetAllCommitmentsResponse](#provenance-exchange-v1-QueryGetAllCommitmentsResponse) | GetAllCommitments gets all fund committed to any market from any account. |
+| `GetMarket` | [QueryGetMarketRequest](#provenance-exchange-v1-QueryGetMarketRequest) | [QueryGetMarketResponse](#provenance-exchange-v1-QueryGetMarketResponse) | GetMarket returns all the information and details about a market. |
+| `GetAllMarkets` | [QueryGetAllMarketsRequest](#provenance-exchange-v1-QueryGetAllMarketsRequest) | [QueryGetAllMarketsResponse](#provenance-exchange-v1-QueryGetAllMarketsResponse) | GetAllMarkets returns brief information about each market. |
+| `Params` | [QueryParamsRequest](#provenance-exchange-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-exchange-v1-QueryParamsResponse) | Params returns the exchange module parameters. |
+| `CommitmentSettlementFeeCalc` | [QueryCommitmentSettlementFeeCalcRequest](#provenance-exchange-v1-QueryCommitmentSettlementFeeCalcRequest) | [QueryCommitmentSettlementFeeCalcResponse](#provenance-exchange-v1-QueryCommitmentSettlementFeeCalcResponse) | CommitmentSettlementFeeCalc calculates the fees a market will pay for a commitment settlement using current NAVs. |
+| `ValidateCreateMarket` | [QueryValidateCreateMarketRequest](#provenance-exchange-v1-QueryValidateCreateMarketRequest) | [QueryValidateCreateMarketResponse](#provenance-exchange-v1-QueryValidateCreateMarketResponse) | ValidateCreateMarket checks the provided MsgGovCreateMarketResponse and returns any errors it might have. |
+| `ValidateMarket` | [QueryValidateMarketRequest](#provenance-exchange-v1-QueryValidateMarketRequest) | [QueryValidateMarketResponse](#provenance-exchange-v1-QueryValidateMarketResponse) | ValidateMarket checks for any problems with a market's setup. |
+| `ValidateManageFees` | [QueryValidateManageFeesRequest](#provenance-exchange-v1-QueryValidateManageFeesRequest) | [QueryValidateManageFeesResponse](#provenance-exchange-v1-QueryValidateManageFeesResponse) | ValidateManageFees checks the provided MsgGovManageFeesRequest and returns any errors that it might have. |
+| `GetPayment` | [QueryGetPaymentRequest](#provenance-exchange-v1-QueryGetPaymentRequest) | [QueryGetPaymentResponse](#provenance-exchange-v1-QueryGetPaymentResponse) | GetPayment gets a single specific payment. |
+| `GetPaymentsWithSource` | [QueryGetPaymentsWithSourceRequest](#provenance-exchange-v1-QueryGetPaymentsWithSourceRequest) | [QueryGetPaymentsWithSourceResponse](#provenance-exchange-v1-QueryGetPaymentsWithSourceResponse) | GetPaymentsWithSource gets all payments with a specific source account. |
+| `GetPaymentsWithTarget` | [QueryGetPaymentsWithTargetRequest](#provenance-exchange-v1-QueryGetPaymentsWithTargetRequest) | [QueryGetPaymentsWithTargetResponse](#provenance-exchange-v1-QueryGetPaymentsWithTargetResponse) | GetPaymentsWithTarget gets all payments with a specific target account. |
+| `GetAllPayments` | [QueryGetAllPaymentsRequest](#provenance-exchange-v1-QueryGetAllPaymentsRequest) | [QueryGetAllPaymentsResponse](#provenance-exchange-v1-QueryGetAllPaymentsResponse) | GetAllPayments gets all payments. |
+| `PaymentFeeCalc` | [QueryPaymentFeeCalcRequest](#provenance-exchange-v1-QueryPaymentFeeCalcRequest) | [QueryPaymentFeeCalcResponse](#provenance-exchange-v1-QueryPaymentFeeCalcResponse) | PaymentFeeCalc calculates the fees that must be paid for creating or accepting a specific payment. |
-
+
Top
-## provenance/hold/v1/events.proto
+## provenance/exchange/v1/genesis.proto
-
+
-### EventHoldAdded
-EventHoldAdded is an event indicating that some funds were placed on hold in an account.
+### GenesisState
+GenesisState is the data that should be loaded into the exchange module during genesis.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the bech32 address string of the account with the funds. |
-| `amount` | [string](#string) | | amount is a Coins string of the funds placed on hold. |
-| `reason` | [string](#string) | | reason is a human-readable indicator of why this hold was added. |
+| `params` | [Params](#provenance-exchange-v1-Params) | | params defines all the parameters of the exchange module. |
+| `markets` | [Market](#provenance-exchange-v1-Market) | repeated | markets are all of the markets to create at genesis. |
+| `orders` | [Order](#provenance-exchange-v1-Order) | repeated | orders are all the orders to create at genesis. |
+| `last_market_id` | [uint32](#uint32) | | last_market_id is the value of the last auto-selected market id. |
+| `last_order_id` | [uint64](#uint64) | | last_order_id is the value of the last order id created. |
+| `commitments` | [Commitment](#provenance-exchange-v1-Commitment) | repeated | commitments are all of the commitments to create at genesis. |
+| `payments` | [Payment](#provenance-exchange-v1-Payment) | repeated | payments are all the payments to create at genesis. |
+
-
+
-### EventHoldReleased
-EventHoldReleased is an event indicating that some funds were released from hold for an account.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the bech32 address string of the account with the funds. |
-| `amount` | [string](#string) | | amount is a Coins string of the funds released from hold. |
+
+Top
+## provenance/exchange/v1/orders.proto
-
-
+
-
+### AskOrder
+AskOrder represents someone's desire to sell something at a minimum price.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `market_id` | [uint32](#uint32) | | market_id identifies the market that this order belongs to. |
+| `seller` | [string](#string) | | seller is the address of the account that owns this order and has the assets to sell. |
+| `assets` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | assets are the things that the seller wishes to sell. A hold is placed on this until the order is filled or cancelled. |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is the minimum amount that the seller is willing to accept for the assets. The seller's settlement proportional fee (and possibly the settlement flat fee) is taken out of the amount the seller receives, so it's possible that the seller will still receive less than this price. |
+| `seller_settlement_flat_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | seller_settlement_flat_fee is the flat fee for sellers that will be charged during settlement. If this denom is the same denom as the price, it will come out of the actual price received. If this denom is different, the amount must be in the seller's account and a hold is placed on it until the order is filled or cancelled. |
+| `allow_partial` | [bool](#bool) | | allow_partial should be true if partial fulfillment of this order should be allowed, and should be false if the order must be either filled in full or not filled at all. |
+| `external_id` | [string](#string) | | external_id is an optional string used to externally identify this order. Max length is 100 characters. If an order in this market with this external id already exists, this order will be rejected. |
-
-Top
-## provenance/hold/v1/hold.proto
-
+
-### AccountHold
-AccountHold associates an address with an amount on hold for that address.
+### BidOrder
+BidOrder represents someone's desire to buy something at a specific price.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the account address that holds the funds on hold. |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the balances that are on hold for the address. |
+| `market_id` | [uint32](#uint32) | | market_id identifies the market that this order belongs to. |
+| `buyer` | [string](#string) | | buyer is the address of the account that owns this order and has the price to spend. |
+| `assets` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | assets are the things that the buyer wishes to buy. |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is the amount that the buyer will pay for the assets. A hold is placed on this until the order is filled or cancelled. |
+| `buyer_settlement_fees` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | buyer_settlement_fees are the fees (both flat and proportional) that the buyer will pay (in addition to the price) when the order is settled. A hold is placed on this until the order is filled or cancelled. |
+| `allow_partial` | [bool](#bool) | | allow_partial should be true if partial fulfillment of this order should be allowed, and should be false if the order must be either filled in full or not filled at all. |
+| `external_id` | [string](#string) | | external_id is an optional string used to externally identify this order. Max length is 100 characters. If an order in this market with this external id already exists, this order will be rejected. |
-
-
+
-
-
-
-
-
-
-
-Top
-
-## provenance/hold/v1/genesis.proto
-
-
-
-
-
-### GenesisState
-GenesisState defines the attribute module's genesis state.
+### Order
+Order associates an order id with one of the order types.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `holds` | [AccountHold](#provenance.hold.v1.AccountHold) | repeated | holds defines the funds on hold at genesis. |
+| `order_id` | [uint64](#uint64) | | order_id is the numerical identifier for this order. |
+| `ask_order` | [AskOrder](#provenance-exchange-v1-AskOrder) | | ask_order is the information about this order if it represents an ask order. |
+| `bid_order` | [BidOrder](#provenance-exchange-v1-BidOrder) | | bid_order is the information about this order if it represents a bid order. |
@@ -4149,110 +4361,115 @@ GenesisState defines the attribute module's genesis state.
-
+
Top
-## provenance/hold/v1/query.proto
+## provenance/exchange/v1/params.proto
-
+
-### GetAllHoldsRequest
-GetAllHoldsRequest is the request type for the Query/GetAllHolds query.
+### DenomSplit
+DenomSplit associates a coin denomination with an amount the exchange receives for that denom.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `denom` | [string](#string) | | denom is the coin denomination this split applies to. |
+| `split` | [uint32](#uint32) | | split is the proportion of fees the exchange receives for this denom in basis points. E.g. 100 = 1%. Min = 0, Max = 10000. |
-
+
-### GetAllHoldsResponse
-GetAllHoldsResponse is the response type for the Query/GetAllHolds query.
+### Params
+Params is a representation of the exchange module parameters.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `holds` | [AccountHold](#provenance.hold.v1.AccountHold) | repeated | holds is a list of addresses with funds on hold and the amounts being held. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `default_split` | [uint32](#uint32) | | default_split is the default proportion of fees the exchange receives in basis points. It is used if there isn't an applicable denom-specific split defined. E.g. 100 = 1%. Min = 0, Max = 10000. |
+| `denom_splits` | [DenomSplit](#provenance-exchange-v1-DenomSplit) | repeated | denom_splits are the denom-specific amounts the exchange receives. |
+| `fee_create_payment_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_create_payment_flat is the flat fee options for creating a payment. If the source amount is not zero then one of these fee entries is required to create the payment. This field is currently limited to zero or one entries. |
+| `fee_accept_payment_flat` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | fee_accept_payment_flat is the flat fee options for accepting a payment. If the target amount is not zero then one of these fee entries is required to accept the payment. This field is currently limited to zero or one entries. |
+
-
+
-### GetHoldsRequest
-GetHoldsRequest is the request type for the Query/GetHolds query.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the account address to get on-hold balances for. |
+
+Top
+## provenance/trigger/v1/tx.proto
-
+
-### GetHoldsResponse
-GetHoldsResponse is the response type for the Query/GetHolds query.
+### MsgCreateTriggerRequest
+MsgCreateTriggerRequest is the request type for creating a trigger RPC
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | amount is the total on hold for the requested address. |
+| `authorities` | [string](#string) | repeated | The signing authorities for the request |
+| `event` | [google.protobuf.Any](#google-protobuf-Any) | | The event that must be detected for the trigger to fire. |
+| `actions` | [google.protobuf.Any](#google-protobuf-Any) | repeated | The messages to run when the trigger fires. |
-
-
+
-
+### MsgCreateTriggerResponse
+MsgCreateTriggerResponse is the response type for creating a trigger RPC
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `id` | [uint64](#uint64) | | trigger id that is generated on creation. |
-### Query
-Query defines the gRPC querier service for attribute module.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `GetHolds` | [GetHoldsRequest](#provenance.hold.v1.GetHoldsRequest) | [GetHoldsResponse](#provenance.hold.v1.GetHoldsResponse) | GetHolds looks up the funds that are on hold for an address. | GET|/provenance/hold/v1/funds/{address}|
-| `GetAllHolds` | [GetAllHoldsRequest](#provenance.hold.v1.GetAllHoldsRequest) | [GetAllHoldsResponse](#provenance.hold.v1.GetAllHoldsResponse) | GetAllHolds returns all addresses with funds on hold, and the amount held. | GET|/provenance/hold/v1/funds|
-
-
-Top
+
-## provenance/ibchooks/v1/params.proto
+### MsgDestroyTriggerRequest
+MsgDestroyTriggerRequest is the request type for creating a trigger RPC
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `id` | [uint64](#uint64) | | the id of the trigger to destroy. |
+| `authority` | [string](#string) | | The signing authority for the request |
-
-### Params
-Params defines the allowed async ack contracts
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `allowed_async_ack_contracts` | [string](#string) | repeated | |
+
+
+### MsgDestroyTriggerResponse
+MsgDestroyTriggerResponse is the response type for creating a trigger RPC
@@ -4264,75 +4481,83 @@ Params defines the allowed async ack contracts
+
+
+
+### Msg
+Msg
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `CreateTrigger` | [MsgCreateTriggerRequest](#provenance-trigger-v1-MsgCreateTriggerRequest) | [MsgCreateTriggerResponse](#provenance-trigger-v1-MsgCreateTriggerResponse) | CreateTrigger is the RPC endpoint for creating a trigger |
+| `DestroyTrigger` | [MsgDestroyTriggerRequest](#provenance-trigger-v1-MsgDestroyTriggerRequest) | [MsgDestroyTriggerResponse](#provenance-trigger-v1-MsgDestroyTriggerResponse) | DestroyTrigger is the RPC endpoint for creating a trigger |
+
-
+
Top
-## provenance/ibchooks/v1/genesis.proto
+## provenance/trigger/v1/query.proto
-
+
-### GenesisState
-GenesisState is the IBC Hooks genesis state (params)
+### QueryTriggerByIDRequest
+QueryTriggerByIDRequest queries for the Trigger with an identifier of id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.ibchooks.v1.Params) | | |
+| `id` | [uint64](#uint64) | | The id of the trigger to query. |
-
-
+
-
+### QueryTriggerByIDResponse
+QueryTriggerByIDResponse contains the requested Trigger.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `trigger` | [Trigger](#provenance-trigger-v1-Trigger) | | The trigger object that was queried for. |
-
-Top
-## provenance/ibchooks/v1/tx.proto
-
+
-### MsgEmitIBCAck
-MsgEmitIBCAck is the IBC Acknowledgement
+### QueryTriggersRequest
+QueryTriggersRequest queries for all triggers.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `sender` | [string](#string) | | |
-| `packet_sequence` | [uint64](#uint64) | | |
-| `channel` | [string](#string) | | |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### MsgEmitIBCAckResponse
-MsgEmitIBCAckResponse is the IBC Acknowledgement response
+### QueryTriggersResponse
+QueryTriggersResponse contains the list of Triggers.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_result` | [string](#string) | | |
-| `ibc_ack` | [string](#string) | | |
+| `triggers` | [Trigger](#provenance-trigger-v1-Trigger) | repeated | List of Trigger objects. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the response. |
@@ -4345,94 +4570,83 @@ MsgEmitIBCAckResponse is the IBC Acknowledgement response
-
+
-### Msg
-Msg defines the Msg service.
+### Query
+Query defines the gRPC querier service for trigger module.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `EmitIBCAck` | [MsgEmitIBCAck](#provenance.ibchooks.v1.MsgEmitIBCAck) | [MsgEmitIBCAckResponse](#provenance.ibchooks.v1.MsgEmitIBCAckResponse) | EmitIBCAck checks the sender can emit the ack and writes the IBC acknowledgement | |
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `TriggerByID` | [QueryTriggerByIDRequest](#provenance-trigger-v1-QueryTriggerByIDRequest) | [QueryTriggerByIDResponse](#provenance-trigger-v1-QueryTriggerByIDResponse) | TriggerByID returns a trigger matching the ID. |
+| `Triggers` | [QueryTriggersRequest](#provenance-trigger-v1-QueryTriggersRequest) | [QueryTriggersResponse](#provenance-trigger-v1-QueryTriggersResponse) | Triggers returns the list of triggers. |
-
+
Top
-## provenance/ibcratelimit/v1/event.proto
+## provenance/trigger/v1/event.proto
-
+
-### EventAckRevertFailure
-EventAckRevertFailure is emitted when an Ack revert fails
+### EventTriggerCreated
+EventTriggerCreated is an event for when a trigger is created
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `module` | [string](#string) | | module is the name of the module that emitted it. |
-| `packet` | [string](#string) | | packet is the packet received on acknowledgement. |
-| `ack` | [string](#string) | | ack is the packet's inner acknowledgement message. |
-
-
-
-
-
-
-
-
-### EventParamsUpdated
-EventParamsUpdated is an event emitted when the ibcratelimit module's params have been updated.
+| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
-
+
-### EventTimeoutRevertFailure
-EventTimeoutRevertFailure is emitted when a Timeout revert fails
+### EventTriggerDestroyed
+EventTriggerDestroyed is an event for when a trigger is destroyed
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `module` | [string](#string) | | module is the name of the module that emitted it. |
-| `packet` | [string](#string) | | packet is the packet received on timeout. |
+| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
-
-
+
-
+### EventTriggerDetected
+EventTriggerDetected is an event for when a trigger's event is detected
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
-
-Top
-## provenance/ibcratelimit/v1/params.proto
-
+
-### Params
-Params defines the parameters for the ibcratelimit module.
+### EventTriggerExecuted
+EventTriggerExecuted is an event for when a trigger is executed.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_address` | [string](#string) | | contract_address is the address of the rate limiter contract. |
+| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
+| `owner` | [string](#string) | | owner is the creator of the trigger. |
+| `success` | [bool](#bool) | | success indicates if all executed actions were successful. |
@@ -4448,22 +4662,42 @@ Params defines the parameters for the ibcratelimit module.
-
+
Top
-## provenance/ibcratelimit/v1/genesis.proto
+## provenance/trigger/v1/genesis.proto
+
+
+
+
+
+### GasLimit
+GasLimit defines the trigger module's grouping of a trigger and a gas limit
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `trigger_id` | [uint64](#uint64) | | The identifier of the trigger this GasLimit belongs to. |
+| `amount` | [uint64](#uint64) | | The maximum amount of gas that the trigger can use. |
+
-
+
+
+
### GenesisState
-GenesisState defines the ibcratelimit module's genesis state.
+GenesisState defines the trigger module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.ibcratelimit.v1.Params) | | params are all the parameters of the module. |
+| `trigger_id` | [uint64](#uint64) | | Trigger id is the next auto incremented id to be assigned to the next created trigger |
+| `queue_start` | [uint64](#uint64) | | Queue start is the starting index of the queue. |
+| `triggers` | [Trigger](#provenance-trigger-v1-Trigger) | repeated | Triggers to initially start with. |
+| `gas_limits` | [GasLimit](#provenance-trigger-v1-GasLimit) | repeated | Maximum amount of gas that the triggers can use. |
+| `queued_triggers` | [QueuedTrigger](#provenance-trigger-v1-QueuedTrigger) | repeated | Triggers to initially start with in the queue. |
@@ -4479,84 +4713,104 @@ GenesisState defines the ibcratelimit module's genesis state.
-
+
Top
-## provenance/ibcratelimit/v1/query.proto
+## provenance/trigger/v1/trigger.proto
-
+
-### ParamsRequest
-ParamsRequest is the request type for the Query/Params RPC method.
+### Attribute
+Attribute
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | The name of the attribute that the event must have to be considered a match. |
+| `value` | [string](#string) | | The value of the attribute that the event must have to be considered a match. |
-
+
-### ParamsResponse
-ParamsResponse is the response type for the Query/Params RPC method.
+### BlockHeightEvent
+BlockHeightEvent
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.ibcratelimit.v1.Params) | | params defines the parameters of the module. |
+| `block_height` | [uint64](#uint64) | | The height that the trigger should fire at. |
-
-
+
-
+### BlockTimeEvent
+BlockTimeEvent
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `time` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | The time the trigger should fire at. |
-### Query
-Query defines the gRPC querier service.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [ParamsRequest](#provenance.ibcratelimit.v1.ParamsRequest) | [ParamsResponse](#provenance.ibcratelimit.v1.ParamsResponse) | Params defines a gRPC query method that returns the ibcratelimit module's parameters. | GET|/provenance/ibcratelimit/v1/params|
-
-
-Top
+
-## provenance/ibcratelimit/v1/tx.proto
+### QueuedTrigger
+QueuedTrigger
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `block_height` | [uint64](#uint64) | | The block height the trigger was detected and queued. |
+| `time` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | The time the trigger was detected and queued. |
+| `trigger` | [Trigger](#provenance-trigger-v1-Trigger) | | The trigger that was detected. |
-
-### MsgGovUpdateParamsRequest
-MsgGovUpdateParamsRequest is a request message for the GovUpdateParams endpoint.
+
+
+
+
+### TransactionEvent
+TransactionEvent
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | authority should be the governance module account address. |
-| `params` | [Params](#provenance.ibcratelimit.v1.Params) | | params are the new param values to set |
+| `name` | [string](#string) | | The name of the event for a match. |
+| `attributes` | [Attribute](#provenance-trigger-v1-Attribute) | repeated | The attributes that must be present for a match. |
-
+
+
+### Trigger
+Trigger
-### MsgGovUpdateParamsResponse
-MsgGovUpdateParamsResponse is a response message for the GovUpdateParams endpoint.
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `id` | [uint64](#uint64) | | An integer to uniquely identify the trigger. |
+| `owner` | [string](#string) | | The owner of the trigger. |
+| `event` | [google.protobuf.Any](#google-protobuf-Any) | | The event that must be detected for the trigger to fire. |
+| `actions` | [google.protobuf.Any](#google-protobuf-Any) | repeated | The messages to run when the trigger fires. |
@@ -4568,89 +4822,425 @@ MsgGovUpdateParamsResponse is a response message for the GovUpdateParams endpoin
-
-
-
-### Msg
-Msg is the service for ibcratelimit module's tx endpoints.
-
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `GovUpdateParams` | [MsgGovUpdateParamsRequest](#provenance.ibcratelimit.v1.MsgGovUpdateParamsRequest) | [MsgGovUpdateParamsResponse](#provenance.ibcratelimit.v1.MsgGovUpdateParamsResponse) | GovUpdateParams is a governance proposal endpoint for updating the exchange module's params. | |
-
-
+
Top
-## provenance/marker/v1/accessgrant.proto
+## provenance/attribute/v1/tx.proto
-
+
-### AccessGrant
-AccessGrant associates a collection of permissions with an address for delegated marker account control.
+### MsgAddAttributeRequest
+MsgAddAttributeRequest defines an sdk.Msg type that is used to add a new attribute to an account.
+Attributes may only be set in an account by the account that the attribute name resolves to.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `permissions` | [Access](#provenance.marker.v1.Access) | repeated | |
+| `name` | [string](#string) | | The attribute name. |
+| `value` | [bytes](#bytes) | | The attribute value. |
+| `attribute_type` | [AttributeType](#provenance-attribute-v1-AttributeType) | | The attribute value type. |
+| `account` | [string](#string) | | The account to add the attribute to. |
+| `owner` | [string](#string) | | The address that the name must resolve to. |
+| `expiration_date` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Time that an attribute will expire. |
-
+
+
+
+### MsgAddAttributeResponse
+MsgAddAttributeResponse defines the Msg/AddAttribute response type.
+
+
+
+
+
+
+
+
+### MsgDeleteAttributeRequest
+MsgDeleteAttributeRequest defines a message to delete an attribute from an account
+Attributes may only be removed from an account by the account that the attribute name resolves to.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | The attribute name. |
+| `account` | [string](#string) | | The account to add the attribute to. |
+| `owner` | [string](#string) | | The address that the name must resolve to. |
+
+
+
+
+
+
+
+
+### MsgDeleteAttributeResponse
+MsgDeleteAttributeResponse defines the Msg/DeleteAttribute response type.
+
+
+
+
+
+
+
+
+### MsgDeleteDistinctAttributeRequest
+MsgDeleteDistinctAttributeRequest defines a message to delete an attribute with matching name, value, and type from
+an account. Attributes may only be removed from an account by the account that the attribute name resolves to.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | The attribute name. |
+| `value` | [bytes](#bytes) | | The attribute value. |
+| `account` | [string](#string) | | The account to add the attribute to. |
+| `owner` | [string](#string) | | The address that the name must resolve to. |
+
+
+
+
+
+
+
+
+### MsgDeleteDistinctAttributeResponse
+MsgDeleteDistinctAttributeResponse defines the Msg/DeleteDistinctAttribute response type.
+
+
+
+
+
+
+
+
+### MsgSetAccountDataRequest
+MsgSetAccountDataRequest defines a message to set an account's accountdata attribute.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `value` | [string](#string) | | |
+| `account` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### MsgSetAccountDataResponse
+MsgSetAccountDataResponse defines the Msg/SetAccountData response type.
+
+
+
+
+
+
+
+
+### MsgUpdateAttributeExpirationRequest
+MsgUpdateAttributeExpirationRequest defines an sdk.Msg type that is used to update an existing attribute's expiration
+date
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | The attribute name. |
+| `value` | [bytes](#bytes) | | The original attribute value. |
+| `expiration_date` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Time that an attribute will expire. |
+| `account` | [string](#string) | | The account to add the attribute to. |
+| `owner` | [string](#string) | | The address that the name must resolve to. |
+
+
+
+
+
+
+
+
+### MsgUpdateAttributeExpirationResponse
+MsgUpdateAttributeExpirationResponse defines the Msg/Vote response type.
+
+
+
+
+
+
+
+
+### MsgUpdateAttributeRequest
+MsgUpdateAttributeRequest defines an sdk.Msg type that is used to update an existing attribute to an account.
+Attributes may only be set in an account by the account that the attribute name resolves to.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | The attribute name. |
+| `original_value` | [bytes](#bytes) | | The original attribute value. |
+| `update_value` | [bytes](#bytes) | | The update attribute value. |
+| `original_attribute_type` | [AttributeType](#provenance-attribute-v1-AttributeType) | | The original attribute value type. |
+| `update_attribute_type` | [AttributeType](#provenance-attribute-v1-AttributeType) | | The update attribute value type. |
+| `account` | [string](#string) | | The account to add the attribute to. |
+| `owner` | [string](#string) | | The address that the name must resolve to. |
+
+
+
+
+
+
+
+
+### MsgUpdateAttributeResponse
+MsgUpdateAttributeResponse defines the Msg/UpdateAttribute response type.
+
+
+
+
+
+
+
+
+### MsgUpdateParamsRequest
+MsgUpdateParamsRequest is a request message for the UpdateParams endpoint.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-attribute-v1-Params) | | params are the new param values to set. |
+
-
-### Access
-Access defines the different types of permissions that a marker supports granting to an address.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| ACCESS_UNSPECIFIED | 0 | ACCESS_UNSPECIFIED defines a no-op vote option. |
-| ACCESS_MINT | 1 | ACCESS_MINT is the ability to increase the supply of a marker. |
-| ACCESS_BURN | 2 | ACCESS_BURN is the ability to decrease the supply of the marker using coin held by the marker. |
-| ACCESS_DEPOSIT | 3 | ACCESS_DEPOSIT is the ability to transfer funds from another account to this marker account or to set a reference to this marker in the metadata/scopes module. |
-| ACCESS_WITHDRAW | 4 | ACCESS_WITHDRAW is the ability to transfer funds from this marker account to another account or to remove a reference to this marker in the metadata/scopes module. |
-| ACCESS_DELETE | 5 | ACCESS_DELETE is the ability to move a proposed, finalized or active marker into the cancelled state. This access also allows cancelled markers to be marked for deletion. |
-| ACCESS_ADMIN | 6 | ACCESS_ADMIN is the ability to add access grants for accounts to the list of marker permissions. This access also gives the ability to update the marker's denom metadata. |
-| ACCESS_TRANSFER | 7 | ACCESS_TRANSFER is the ability to manage transfer settings and broker transfers of the marker. Accounts with this access can: - Update the marker's required attributes. - Update the send-deny list. - Use the transfer or bank send endpoints to move marker funds out of their own account. This access right is only supported on RESTRICTED markers. |
-| ACCESS_FORCE_TRANSFER | 8 | ACCESS_FORCE_TRANSFER is the ability to transfer restricted coins from a 3rd-party account without their signature. This access right is only supported on RESTRICTED markers and only has meaning when allow_forced_transfer is true. |
+
+
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the UpdateParams endpoint.
+
+
+
+
+
+
+
+
+
+### Msg
+Msg defines the attribute module Msg service.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `AddAttribute` | [MsgAddAttributeRequest](#provenance-attribute-v1-MsgAddAttributeRequest) | [MsgAddAttributeResponse](#provenance-attribute-v1-MsgAddAttributeResponse) | AddAttribute defines a method to verify a particular invariance. |
+| `UpdateAttribute` | [MsgUpdateAttributeRequest](#provenance-attribute-v1-MsgUpdateAttributeRequest) | [MsgUpdateAttributeResponse](#provenance-attribute-v1-MsgUpdateAttributeResponse) | UpdateAttribute defines a method to verify a particular invariance. |
+| `UpdateAttributeExpiration` | [MsgUpdateAttributeExpirationRequest](#provenance-attribute-v1-MsgUpdateAttributeExpirationRequest) | [MsgUpdateAttributeExpirationResponse](#provenance-attribute-v1-MsgUpdateAttributeExpirationResponse) | UpdateAttributeExpiration defines a method to verify a particular invariance. |
+| `DeleteAttribute` | [MsgDeleteAttributeRequest](#provenance-attribute-v1-MsgDeleteAttributeRequest) | [MsgDeleteAttributeResponse](#provenance-attribute-v1-MsgDeleteAttributeResponse) | DeleteAttribute defines a method to verify a particular invariance. |
+| `DeleteDistinctAttribute` | [MsgDeleteDistinctAttributeRequest](#provenance-attribute-v1-MsgDeleteDistinctAttributeRequest) | [MsgDeleteDistinctAttributeResponse](#provenance-attribute-v1-MsgDeleteDistinctAttributeResponse) | DeleteDistinctAttribute defines a method to verify a particular invariance. |
+| `SetAccountData` | [MsgSetAccountDataRequest](#provenance-attribute-v1-MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance-attribute-v1-MsgSetAccountDataResponse) | SetAccountData defines a method for setting/updating an account's accountdata attribute. |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-attribute-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-attribute-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the attribute module's params. |
+
-
+
Top
-## provenance/marker/v1/authz.proto
+## provenance/attribute/v1/attribute.proto
-
+
-### MarkerTransferAuthorization
-MarkerTransferAuthorization gives the grantee permissions to execute
-a marker transfer on behalf of the granter's account.
+### Attribute
+Attribute holds a typed key/value structure for data associated with an account
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `transfer_limit` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | transfer_limit is the total amount the grantee can transfer |
-| `allow_list` | [string](#string) | repeated | allow_list specifies an optional list of addresses to whom the grantee can send restricted coins on behalf of the granter. If omitted, any recipient is allowed. |
+| `name` | [string](#string) | | The attribute name. |
+| `value` | [bytes](#bytes) | | The attribute value. |
+| `attribute_type` | [AttributeType](#provenance-attribute-v1-AttributeType) | | The attribute value type. |
+| `address` | [string](#string) | | The address the attribute is bound to |
+| `expiration_date` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Time that an attribute will expire. |
+
+
+
+
+
+
+
+
+### EventAccountDataUpdated
+EventAccountDataUpdated event emitted when accountdata is set, updated, or deleted.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeAdd
+EventAttributeAdd event emitted when attribute is added
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `value` | [string](#string) | | |
+| `type` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `owner` | [string](#string) | | |
+| `expiration` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeDelete
+EventAttributeDelete event emitted when attribute is deleted
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `owner` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeDistinctDelete
+EventAttributeDistinctDelete event emitted when attribute is deleted with matching value
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `value` | [string](#string) | | |
+| `attribute_type` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `owner` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeExpirationUpdate
+EventAttributeExpirationUpdate event emitted when attribute expiration is updated
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `value` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `owner` | [string](#string) | | |
+| `original_expiration` | [string](#string) | | |
+| `updated_expiration` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeExpired
+EventAttributeExpired event emitted when attribute has expired and been deleted in BeginBlocker
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `value_hash` | [string](#string) | | |
+| `attribute_type` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `expiration` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeParamsUpdated
+EventAttributeParamsUpdated event emitted when attribute params are updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `max_value_length` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### EventAttributeUpdate
+EventAttributeUpdate event emitted when attribute is updated
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | |
+| `original_value` | [string](#string) | | |
+| `original_type` | [string](#string) | | |
+| `update_value` | [string](#string) | | |
+| `update_type` | [string](#string) | | |
+| `account` | [string](#string) | | |
+| `owner` | [string](#string) | | |
+
+
+
+
+
+
+
+
+### Params
+Params defines the set of params for the attribute module.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `max_value_length` | [uint32](#uint32) | | maximum length of data to allow in an attribute value |
@@ -4658,6 +5248,25 @@ a marker transfer on behalf of the granter's account.
+
+
+
+### AttributeType
+AttributeType defines the type of the data stored in the attribute value
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `ATTRIBUTE_TYPE_UNSPECIFIED` | `0` | ATTRIBUTE_TYPE_UNSPECIFIED defines an unknown/invalid type |
+| `ATTRIBUTE_TYPE_UUID` | `1` | ATTRIBUTE_TYPE_UUID defines an attribute value that contains a string value representation of a V4 uuid |
+| `ATTRIBUTE_TYPE_JSON` | `2` | ATTRIBUTE_TYPE_JSON defines an attribute value that contains a byte string containing json data |
+| `ATTRIBUTE_TYPE_STRING` | `3` | ATTRIBUTE_TYPE_STRING defines an attribute value that contains a generic string value |
+| `ATTRIBUTE_TYPE_URI` | `4` | ATTRIBUTE_TYPE_URI defines an attribute value that contains a URI |
+| `ATTRIBUTE_TYPE_INT` | `5` | ATTRIBUTE_TYPE_INT defines an attribute value that contains an integer (cast as int64) |
+| `ATTRIBUTE_TYPE_FLOAT` | `6` | ATTRIBUTE_TYPE_FLOAT defines an attribute value that contains a float |
+| `ATTRIBUTE_TYPE_PROTO` | `7` | ATTRIBUTE_TYPE_PROTO defines an attribute value that contains a serialized proto value in bytes |
+| `ATTRIBUTE_TYPE_BYTES` | `8` | ATTRIBUTE_TYPE_BYTES defines an attribute value that contains an untyped array of bytes |
+
+
@@ -4666,423 +5275,423 @@ a marker transfer on behalf of the granter's account.
-
+
Top
-## provenance/marker/v1/marker.proto
+## provenance/attribute/v1/query.proto
-
+
-### EventDenomUnit
-EventDenomUnit denom units for set denom metadata event
+### QueryAccountDataRequest
+QueryAccountDataRequest is the request type for the Query/AccountData method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `exponent` | [string](#string) | | |
-| `aliases` | [string](#string) | repeated | |
+| `account` | [string](#string) | | account is the bech32 address of the account to get the data for |
-
+
-### EventMarkerAccess
-EventMarkerAccess event access permissions for address
+### QueryAccountDataResponse
+QueryAccountDataResponse is the response type for the Query/AccountData method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `permissions` | [string](#string) | repeated | |
+| `value` | [string](#string) | | value is the accountdata attribute value for the requested account. |
-
+
-### EventMarkerActivate
-EventMarkerActivate event emitted when marker is activated
+### QueryAttributeAccountsRequest
+QueryAttributeAccountsRequest is the request type for the Query/AttributeAccounts method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `attribute_name` | [string](#string) | | name is the attribute name to query for |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerAdd
-EventMarkerAdd event emitted when marker is added
+### QueryAttributeAccountsResponse
+QueryAttributeAccountsResponse is the response type for the Query/AttributeAccounts method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `amount` | [string](#string) | | |
-| `status` | [string](#string) | | |
-| `manager` | [string](#string) | | |
-| `marker_type` | [string](#string) | | |
-| `address` | [string](#string) | | |
+| `accounts` | [string](#string) | repeated | list of account addresses that have attributes of request name |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerAddAccess
-EventMarkerAddAccess event emitted when marker access is added
+### QueryAttributeRequest
+QueryAttributeRequest is the request type for the Query/Attribute method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `access` | [EventMarkerAccess](#provenance.marker.v1.EventMarkerAccess) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `account` | [string](#string) | | account defines the address to query for. |
+| `name` | [string](#string) | | name is the attribute name to query for |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerBurn
-EventMarkerBurn event emitted when coin is burned from marker
+### QueryAttributeResponse
+QueryAttributeResponse is the response type for the Query/Attribute method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to. |
+| `attributes` | [Attribute](#provenance-attribute-v1-Attribute) | repeated | a list of attribute values |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerCancel
-EventMarkerCancel event emitted when marker is cancelled
+### QueryAttributesRequest
+QueryAttributesRequest is the request type for the Query/Attributes method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `account` | [string](#string) | | account defines the address to query for. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerDelete
-EventMarkerDelete event emitted when marker is deleted
+### QueryAttributesResponse
+QueryAttributesResponse is the response type for the Query/Attributes method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to= |
+| `attributes` | [Attribute](#provenance-attribute-v1-Attribute) | repeated | a list of attribute values |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
+
+
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
+
-### EventMarkerDeleteAccess
-EventMarkerDeleteAccess event emitted when marker access is revoked
+
+
+
+
+
+
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `remove_address` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `params` | [Params](#provenance-attribute-v1-Params) | | params defines the parameters of the module. |
-
+
-### EventMarkerFinalize
-EventMarkerFinalize event emitted when marker is finalized
+### QueryScanRequest
+QueryScanRequest is the request type for the Query/Scan method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `account` | [string](#string) | | account defines the address to query for. |
+| `suffix` | [string](#string) | | name defines the partial attribute name to search for base on names being in RDNS format. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### EventMarkerMint
-EventMarkerMint event emitted when additional marker supply is minted
+### QueryScanResponse
+QueryScanResponse is the response type for the Query/Scan method.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `account` | [string](#string) | | a string containing the address of the account the attributes are assigned to= |
+| `attributes` | [Attribute](#provenance-attribute-v1-Attribute) | repeated | a list of attribute values |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+### Query
+Query defines the gRPC querier service for attribute module.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-attribute-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-attribute-v1-QueryParamsResponse) | Params queries params of the attribute module. |
+| `Attribute` | [QueryAttributeRequest](#provenance-attribute-v1-QueryAttributeRequest) | [QueryAttributeResponse](#provenance-attribute-v1-QueryAttributeResponse) | Attribute queries attributes on a given account (address) for one (or more) with the given name |
+| `Attributes` | [QueryAttributesRequest](#provenance-attribute-v1-QueryAttributesRequest) | [QueryAttributesResponse](#provenance-attribute-v1-QueryAttributesResponse) | Attributes queries attributes on a given account (address) for any defined attributes |
+| `Scan` | [QueryScanRequest](#provenance-attribute-v1-QueryScanRequest) | [QueryScanResponse](#provenance-attribute-v1-QueryScanResponse) | Scan queries attributes on a given account (address) for any that match the provided suffix |
+| `AttributeAccounts` | [QueryAttributeAccountsRequest](#provenance-attribute-v1-QueryAttributeAccountsRequest) | [QueryAttributeAccountsResponse](#provenance-attribute-v1-QueryAttributeAccountsResponse) | AttributeAccounts queries accounts on a given attribute name |
+| `AccountData` | [QueryAccountDataRequest](#provenance-attribute-v1-QueryAccountDataRequest) | [QueryAccountDataResponse](#provenance-attribute-v1-QueryAccountDataResponse) | AccountData returns the accountdata for a specified account. |
+
+
+
+
+
+
+Top
+
+## provenance/attribute/v1/genesis.proto
+
+
+
+
+
+### GenesisState
+GenesisState defines the attribute module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `params` | [Params](#provenance-attribute-v1-Params) | | params defines all the parameters of the module. |
+| `attributes` | [Attribute](#provenance-attribute-v1-Attribute) | repeated | deposits defines all the deposits present at genesis. |
+
-
+
-### EventMarkerSetDenomMetadata
-EventMarkerSetDenomMetadata event emitted when metadata is set on marker with denom
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `metadata_base` | [string](#string) | | |
-| `metadata_description` | [string](#string) | | |
-| `metadata_display` | [string](#string) | | |
-| `metadata_denom_units` | [EventDenomUnit](#provenance.marker.v1.EventDenomUnit) | repeated | |
-| `administrator` | [string](#string) | | |
-| `metadata_name` | [string](#string) | | |
-| `metadata_symbol` | [string](#string) | | |
+
+Top
+## provenance/msgfees/v1/tx.proto
-
+
-### EventMarkerTransfer
-EventMarkerTransfer event emitted when coins are transfered to from account to another
+### MsgAddMsgFeeProposalRequest
+AddMsgFeeProposal defines a governance proposal to add additional msg based fee
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `to_address` | [string](#string) | | |
-| `from_address` | [string](#string) | | |
-
-
+| `msg_type_url` | [string](#string) | | type url of msg to add fee |
+| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | additional fee for msg type |
+| `recipient` | [string](#string) | | optional recipient to receive basis points |
+| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
+| `authority` | [string](#string) | | the signing authority for the proposal |
-
-### EventMarkerWithdraw
-EventMarkerWithdraw event emitted when coins are withdrew from marker
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `coins` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `to_address` | [string](#string) | | |
+### MsgAddMsgFeeProposalResponse
+MsgAddMsgFeeProposalResponse defines the Msg/AddMsgFeeProposal response type
-
+
-### EventSetNetAssetValue
-EventSetNetAssetValue event emitted when Net Asset Value for marker is update or added
+### MsgAssessCustomMsgFeeRequest
+MsgAssessCustomMsgFeeRequest defines an sdk.Msg type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `price` | [string](#string) | | |
-| `volume` | [string](#string) | | |
-| `source` | [string](#string) | | |
-
-
+| `name` | [string](#string) | | optional short name for custom msg fee, this will be emitted as a property of the event |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | amount of additional fee that must be paid |
+| `recipient` | [string](#string) | | optional recipient address, the basis points amount is sent to the recipient |
+| `from` | [string](#string) | | the signer of the msg |
+| `recipient_basis_points` | [string](#string) | | optional basis points 0 - 10,000 for recipient defaults to 10,000 |
-
-### MarkerAccount
-MarkerAccount holds the marker configuration information in addition to a base account structure.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `base_account` | [cosmos.auth.v1beta1.BaseAccount](#cosmos.auth.v1beta1.BaseAccount) | | base cosmos account information including address and coin holdings. |
-| `manager` | [string](#string) | | Address that owns the marker configuration. This account must sign any requests to change marker config (only valid for statuses prior to finalization) |
-| `access_control` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | Access control lists |
-| `status` | [MarkerStatus](#provenance.marker.v1.MarkerStatus) | | Indicates the current status of this marker record. |
-| `denom` | [string](#string) | | value denomination and total supply for the token. |
-| `supply` | [string](#string) | | the total supply expected for a marker. This is the amount that is minted when a marker is created. |
-| `marker_type` | [MarkerType](#provenance.marker.v1.MarkerType) | | Marker type information |
-| `supply_fixed` | [bool](#bool) | | A fixed supply will mint additional coin automatically if the total supply decreases below a set value. This may occur if the coin is burned or an account holding the coin is slashed. (default: true) |
-| `allow_governance_control` | [bool](#bool) | | indicates that governance based control is allowed for this marker |
-| `allow_forced_transfer` | [bool](#bool) | | Whether an admin can transfer restricted coins from a 3rd-party account without their signature. |
-| `required_attributes` | [string](#string) | repeated | list of required attributes on restricted marker in order to send and receive transfers if sender does not have transfer authority |
+### MsgAssessCustomMsgFeeResponse
+MsgAssessCustomMsgFeeResponse defines the Msg/AssessCustomMsgFeee response type.
-
+
-### NetAssetValue
-NetAssetValue defines a marker's net asset value
+### MsgRemoveMsgFeeProposalRequest
+RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is the complete value of the asset's volume |
-| `volume` | [uint64](#uint64) | | volume is the number of tokens of the marker that were purchased for the price |
-| `updated_block_height` | [uint64](#uint64) | | updated_block_height is the block height of last update |
+| `msg_type_url` | [string](#string) | | type url of msg fee to remove |
+| `authority` | [string](#string) | | the signing authority for the proposal |
-
+
-### Params
-Params defines the set of params for the account module.
+### MsgRemoveMsgFeeProposalResponse
+MsgRemoveMsgFeeProposalResponse defines the Msg/RemoveMsgFeeProposal response type
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `max_total_supply` | [uint64](#uint64) | | **Deprecated.** Deprecated: Prefer to use `max_supply` instead. Maximum amount of supply to allow a marker to be created with |
-| `enable_governance` | [bool](#bool) | | indicates if governance based controls of markers is allowed. |
-| `unrestricted_denom_regex` | [string](#string) | | a regular expression used to validate marker denom values from normal create requests (governance requests are only subject to platform coin validation denom expression) |
-| `max_supply` | [string](#string) | | maximum amount of supply to allow a marker to be created with |
+
-
+### MsgUpdateConversionFeeDenomProposalRequest
+UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom that usd will be converted to |
+| `authority` | [string](#string) | | the signing authority for the proposal |
-### MarkerStatus
-MarkerStatus defines the various states a marker account can be in.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| MARKER_STATUS_UNSPECIFIED | 0 | MARKER_STATUS_UNSPECIFIED - Unknown/Invalid Marker Status |
-| MARKER_STATUS_PROPOSED | 1 | MARKER_STATUS_PROPOSED - Initial configuration period, updates allowed, token supply not created. |
-| MARKER_STATUS_FINALIZED | 2 | MARKER_STATUS_FINALIZED - Configuration finalized, ready for supply creation |
-| MARKER_STATUS_ACTIVE | 3 | MARKER_STATUS_ACTIVE - Supply is created, rules are in force. |
-| MARKER_STATUS_CANCELLED | 4 | MARKER_STATUS_CANCELLED - Marker has been cancelled, pending destroy |
-| MARKER_STATUS_DESTROYED | 5 | MARKER_STATUS_DESTROYED - Marker supply has all been recalled, marker is considered destroyed and no further actions allowed. |
-
-### MarkerType
-MarkerType defines the types of marker
+
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| MARKER_TYPE_UNSPECIFIED | 0 | MARKER_TYPE_UNSPECIFIED is an invalid/unknown marker type. |
-| MARKER_TYPE_COIN | 1 | MARKER_TYPE_COIN is a marker that represents a standard fungible coin (default). |
-| MARKER_TYPE_RESTRICTED | 2 | MARKER_TYPE_RESTRICTED is a marker that represents a denom with send_enabled = false. |
+### MsgUpdateConversionFeeDenomProposalResponse
+MsgUpdateConversionFeeDenomProposalResponse defines the Msg/UpdateConversionFeeDenomProposal response type
-
-
-
+
-
-Top
+### MsgUpdateMsgFeeProposalRequest
+UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee
-## provenance/marker/v1/genesis.proto
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `msg_type_url` | [string](#string) | | type url of msg to update fee |
+| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | additional fee for msg type |
+| `recipient` | [string](#string) | | optional recipient to receive basis points |
+| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
+| `authority` | [string](#string) | | the signing authority for the proposal |
-
-### DenySendAddress
-DenySendAddress defines addresses that are denied sends for marker denom
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `marker_address` | [string](#string) | | marker_address is the marker's address for denied address |
-| `deny_address` | [string](#string) | | deny_address defines all wallet addresses that are denied sends for the marker |
+
+### MsgUpdateMsgFeeProposalResponse
+MsgUpdateMsgFeeProposalResponse defines the Msg/RemoveMsgFeeProposal response type
-
-### GenesisState
-GenesisState defines the account module's genesis state.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.marker.v1.Params) | | params defines all the parameters of the module. |
-| `markers` | [MarkerAccount](#provenance.marker.v1.MarkerAccount) | repeated | A collection of marker accounts to create on start |
-| `net_asset_values` | [MarkerNetAssetValues](#provenance.marker.v1.MarkerNetAssetValues) | repeated | list of marker net asset values |
-| `deny_send_addresses` | [DenySendAddress](#provenance.marker.v1.DenySendAddress) | repeated | list of denom based denied send addresses |
+### MsgUpdateNhashPerUsdMilProposalRequest
+UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is number of nhash per usd mil |
+| `authority` | [string](#string) | | the signing authority for the proposal |
-
-### MarkerNetAssetValues
-MarkerNetAssetValues defines the net asset values for a marker
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address defines the marker address |
-| `net_asset_values` | [NetAssetValue](#provenance.marker.v1.NetAssetValue) | repeated | net_asset_values that are assigned to marker |
+### MsgUpdateNhashPerUsdMilProposalResponse
+MsgUpdateNhashPerUsdMilProposalResponse defines the Msg/UpdateNhashPerUsdMilProposal response type
@@ -5094,166 +5703,160 @@ MarkerNetAssetValues defines the net asset values for a marker
+
+
+
+### Msg
+Msg defines the msgfees Msg service.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `AssessCustomMsgFee` | [MsgAssessCustomMsgFeeRequest](#provenance-msgfees-v1-MsgAssessCustomMsgFeeRequest) | [MsgAssessCustomMsgFeeResponse](#provenance-msgfees-v1-MsgAssessCustomMsgFeeResponse) | AssessCustomMsgFee endpoint executes the additional fee charges. This will only emit the event and not persist it to the keeper. Fees are handled with the custom msg fee handlers Use Case: smart contracts will be able to charge additional fees and direct partial funds to specified recipient for executing contracts |
+| `AddMsgFeeProposal` | [MsgAddMsgFeeProposalRequest](#provenance-msgfees-v1-MsgAddMsgFeeProposalRequest) | [MsgAddMsgFeeProposalResponse](#provenance-msgfees-v1-MsgAddMsgFeeProposalResponse) | AddMsgFeeProposal defines a governance proposal to add additional msg based fee |
+| `UpdateMsgFeeProposal` | [MsgUpdateMsgFeeProposalRequest](#provenance-msgfees-v1-MsgUpdateMsgFeeProposalRequest) | [MsgUpdateMsgFeeProposalResponse](#provenance-msgfees-v1-MsgUpdateMsgFeeProposalResponse) | UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee |
+| `RemoveMsgFeeProposal` | [MsgRemoveMsgFeeProposalRequest](#provenance-msgfees-v1-MsgRemoveMsgFeeProposalRequest) | [MsgRemoveMsgFeeProposalResponse](#provenance-msgfees-v1-MsgRemoveMsgFeeProposalResponse) | RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee |
+| `UpdateNhashPerUsdMilProposal` | [MsgUpdateNhashPerUsdMilProposalRequest](#provenance-msgfees-v1-MsgUpdateNhashPerUsdMilProposalRequest) | [MsgUpdateNhashPerUsdMilProposalResponse](#provenance-msgfees-v1-MsgUpdateNhashPerUsdMilProposalResponse) | UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param |
+| `UpdateConversionFeeDenomProposal` | [MsgUpdateConversionFeeDenomProposalRequest](#provenance-msgfees-v1-MsgUpdateConversionFeeDenomProposalRequest) | [MsgUpdateConversionFeeDenomProposalResponse](#provenance-msgfees-v1-MsgUpdateConversionFeeDenomProposalResponse) | UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom |
+
-
+
Top
-## provenance/marker/v1/proposals.proto
+## provenance/msgfees/v1/query.proto
-
+
-### AddMarkerProposal
-AddMarkerProposal is deprecated and can no longer be used.
-Deprecated: This message is no longer usable. It is only still included for
-backwards compatibility (e.g. looking up old governance proposals).
-It is replaced by providing a MsgAddMarkerRequest in a governance proposal.
+### CalculateTxFeesRequest
+CalculateTxFeesRequest is the request type for the Query RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `manager` | [string](#string) | | |
-| `status` | [MarkerStatus](#provenance.marker.v1.MarkerStatus) | | |
-| `marker_type` | [MarkerType](#provenance.marker.v1.MarkerType) | | |
-| `access_list` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
-| `supply_fixed` | [bool](#bool) | | |
-| `allow_governance_control` | [bool](#bool) | | |
+| `tx_bytes` | [bytes](#bytes) | | tx_bytes is the transaction to simulate. |
+| `default_base_denom` | [string](#string) | | default_base_denom is used to set the denom used for gas fees if not set it will default to nhash. |
+| `gas_adjustment` | [float](#float) | | gas_adjustment is the adjustment factor to be multiplied against the estimate returned by the tx simulation |
-
+
-### ChangeStatusProposal
-ChangeStatusProposal defines a governance proposal to administer a marker to change its status
+### CalculateTxFeesResponse
+CalculateTxFeesResponse is the response type for the Query RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `new_status` | [MarkerStatus](#provenance.marker.v1.MarkerStatus) | | |
+| `additional_fees` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | additional_fees are the amount of coins to be for addition msg fees |
+| `total_fees` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | total_fees are the total amount of fees needed for the transactions (msg fees + gas fee) note: the gas fee is calculated with the floor gas price module param. |
+| `estimated_gas` | [uint64](#uint64) | | estimated_gas is the amount of gas needed for the transaction |
-
+
-### RemoveAdministratorProposal
-RemoveAdministratorProposal defines a governance proposal to administer a marker and remove all permissions for a
-given address
+### QueryAllMsgFeesRequest
+QueryAllMsgFeesRequest queries all Msg which have fees associated with them.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `removed_address` | [string](#string) | repeated | |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### SetAdministratorProposal
-SetAdministratorProposal defines a governance proposal to administer a marker and set administrators with specific
-access on the marker
+### QueryAllMsgFeesResponse
+response for querying all msg's with fees associated with them
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `access` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
+| `msg_fees` | [MsgFee](#provenance-msgfees-v1-MsgFee) | repeated | |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
+
-### SetDenomMetadataProposal
-SetDenomMetadataProposal defines a governance proposal to set the metadata for a denom
-
-
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos.bank.v1beta1.Metadata) | | |
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
-
+
-### SupplyDecreaseProposal
-SupplyDecreaseProposal defines a governance proposal to administer a marker and decrease the total supply through
-burning coin held within the marker
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
+| `params` | [Params](#provenance-msgfees-v1-Params) | | params defines the parameters of the module. |
+
-
+
-### SupplyIncreaseProposal
-SupplyIncreaseProposal defines a governance proposal to administer a marker and increase total supply of the marker
-through minting coin and placing it within the marker or assigning it directly to an account
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `target_address` | [string](#string) | | an optional target address for the minted coin from this request |
+
+
+### Query
+Query defines the gRPC querier service for marker module.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-msgfees-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-msgfees-v1-QueryParamsResponse) | Params queries the parameters for x/msgfees |
+| `QueryAllMsgFees` | [QueryAllMsgFeesRequest](#provenance-msgfees-v1-QueryAllMsgFeesRequest) | [QueryAllMsgFeesResponse](#provenance-msgfees-v1-QueryAllMsgFeesResponse) | Query all Msgs which have fees associated with them. |
+| `CalculateTxFees` | [CalculateTxFeesRequest](#provenance-msgfees-v1-CalculateTxFeesRequest) | [CalculateTxFeesResponse](#provenance-msgfees-v1-CalculateTxFeesResponse) | CalculateTxFees simulates executing a transaction for estimating gas usage and additional fees. |
+
+
+Top
+## provenance/msgfees/v1/genesis.proto
-
-### WithdrawEscrowProposal
-WithdrawEscrowProposal defines a governance proposal to withdraw escrow coins from a marker
+
+
+
+### GenesisState
+GenesisState contains a set of msg fees, persisted from the store
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | |
-| `description` | [string](#string) | | |
-| `denom` | [string](#string) | | |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | |
-| `target_address` | [string](#string) | | |
+| `params` | [Params](#provenance-msgfees-v1-Params) | | params defines all the parameters of the module. |
+| `msg_fees` | [MsgFee](#provenance-msgfees-v1-MsgFee) | repeated | msg_based_fees are the additional fees on specific tx msgs |
@@ -5269,322 +5872,353 @@ WithdrawEscrowProposal defines a governance proposal to withdraw escrow coins fr
-
+
Top
-## provenance/marker/v1/query.proto
-
-
-
-
-
-### Balance
-Balance defines an account address and balance pair used in queries for accounts holding a marker
-
-
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address is the address of the balance holder. |
-| `coins` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | coins defines the different coins this balance holds. |
-
-
-
-
+## provenance/msgfees/v1/msgfees.proto
-
-### QueryAccessRequest
-QueryAccessRequest is the request type for the Query/MarkerAccess method.
+
+
+### EventMsgFee
+EventMsgFee final event property for msg fee on type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | address or denom for the marker |
+| `msg_type` | [string](#string) | | |
+| `count` | [string](#string) | | |
+| `total` | [string](#string) | | |
+| `recipient` | [string](#string) | | |
-
+
-### QueryAccessResponse
-QueryAccessResponse is the response type for the Query/MarkerAccess method.
+### EventMsgFees
+EventMsgFees event emitted with summary of msg fees
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `accounts` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
+| `msg_fees` | [EventMsgFee](#provenance-msgfees-v1-EventMsgFee) | repeated | |
-
+
-### QueryAccountDataRequest
-QueryAccountDataRequest is the request type for the Query/AccountData
+### MsgFee
+MsgFee is the core of what gets stored on the blockchain to define a msg-based fee.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | The denomination to look up. |
+| `msg_type_url` | [string](#string) | | msg_type_url is the type-url of the message with the added fee, e.g. "/cosmos.bank.v1beta1.MsgSend". |
+| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | additional_fee is the extra fee that is required for the given message type (can be in any denom). |
+| `recipient` | [string](#string) | | recipient is an option address that will receive a portion of the additional fee. There can only be a recipient if the recipient_basis_points is not zero. |
+| `recipient_basis_points` | [uint32](#uint32) | | recipient_basis_points is an optional portion of the additional fee to be sent to the recipient. Must be between 0 and 10,000 (inclusive).
If there is a recipient, this must not be zero. If there is not a recipient, this must be zero.
The recipient will receive additional_fee * recipient_basis_points / 10,000. The fee collector will receive the rest, i.e. additional_fee * (10,000 - recipient_basis_points) / 10,000. |
-
+
-### QueryAccountDataResponse
-QueryAccountDataResponse is the response type for the Query/AccountData
+### Params
+Params defines the set of params for the msgfees module.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `value` | [string](#string) | | The accountdata for the requested denom. |
+| `floor_gas_price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | floor_gas_price is the constant used to calculate fees when gas fees shares denom with msg fee.
Conversions: - x nhash/usd-mil = 1,000,000/x usd/hash - y usd/hash = 1,000,000/y nhash/usd-mil
Examples: - 40,000,000 nhash/usd-mil = 1,000,000/40,000,000 usd/hash = $0.025/hash, - $0.040/hash = 1,000,000/0.040 nhash/usd-mil = 25,000,000 nhash/usd-mil |
+| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is the total nhash per usd mil for converting usd to nhash. |
+| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom usd is converted to. |
+
-
+
-### QueryAllMarkersRequest
-QueryAllMarkersRequest is the request type for the Query/AllMarkers method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `status` | [MarkerStatus](#provenance.marker.v1.MarkerStatus) | | Optional status to filter request |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+
+Top
+## provenance/msgfees/v1/proposals.proto
-
+
-### QueryAllMarkersResponse
-QueryAllMarkersResponse is the response type for the Query/AllMarkers method.
+### AddMsgFeeProposal
+AddMsgFeeProposal defines a governance proposal to add additional msg based fee
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgAddMsgFeeProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `markers` | [google.protobuf.Any](#google.protobuf.Any) | repeated | |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `title` | [string](#string) | | propsal title |
+| `description` | [string](#string) | | propsal description |
+| `msg_type_url` | [string](#string) | | type url of msg to add fee |
+| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | additional fee for msg type |
+| `recipient` | [string](#string) | | optional recipient to recieve basis points |
+| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
-
+
-### QueryDenomMetadataRequest
-QueryDenomMetadataRequest is the request type for Query/DenomMetadata
+### RemoveMsgFeeProposal
+RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgRemoveMsgFeeProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
+| `title` | [string](#string) | | propsal title |
+| `description` | [string](#string) | | propsal description |
+| `msg_type_url` | [string](#string) | | type url of msg fee to remove |
-
+
-### QueryDenomMetadataResponse
-QueryDenomMetadataResponse is the response type for the Query/DenomMetadata
+### UpdateConversionFeeDenomProposal
+UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgUpdateConversionFeeDenomProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos.bank.v1beta1.Metadata) | | |
+| `title` | [string](#string) | | proposal title |
+| `description` | [string](#string) | | proposal description |
+| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom that usd will be converted to |
-
+
-### QueryEscrowRequest
-QueryEscrowRequest is the request type for the Query/MarkerEscrow method.
+### UpdateMsgFeeProposal
+UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgUpdateMsgFeeProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | address or denom for the marker |
+| `title` | [string](#string) | | propsal title |
+| `description` | [string](#string) | | propsal description |
+| `msg_type_url` | [string](#string) | | type url of msg to update fee |
+| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | additional fee for msg type |
+| `recipient` | [string](#string) | | optional recipient to recieve basis points |
+| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
-
+
-### QueryEscrowResponse
-QueryEscrowResponse is the response type for the Query/MarkerEscrow method.
+### UpdateNhashPerUsdMilProposal
+UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgUpdateNhashPerUsdMilProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `escrow` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | |
+| `title` | [string](#string) | | proposal title |
+| `description` | [string](#string) | | proposal description |
+| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is number of nhash per usd mil |
+
-
+
-### QueryHoldingRequest
-QueryHoldingRequest is the request type for the Query/MarkerHolders method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | the address or denom of the marker |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+
+Top
+## provenance/oracle/v1/tx.proto
-
+
-### QueryHoldingResponse
-QueryHoldingResponse is the response type for the Query/MarkerHolders method.
+### MsgSendQueryOracleRequest
+MsgSendQueryOracleRequest queries an oracle on another chain
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `balances` | [Balance](#provenance.marker.v1.Balance) | repeated | |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `query` | [bytes](#bytes) | | Query contains the query data passed to the oracle. |
+| `channel` | [string](#string) | | Channel is the channel to the oracle. |
+| `authority` | [string](#string) | | The signing authority for the request |
-
+
-### QueryMarkerRequest
-QueryMarkerRequest is the request type for the Query/Marker method.
+### MsgSendQueryOracleResponse
+MsgSendQueryOracleResponse contains the id of the oracle query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | the address or denom of the marker |
+| `sequence` | [uint64](#uint64) | | The sequence number that uniquely identifies the query. |
-
+
-### QueryMarkerResponse
-QueryMarkerResponse is the response type for the Query/Marker method.
+### MsgUpdateOracleRequest
+MsgUpdateOracleRequest is the request type for updating an oracle's contract address
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `marker` | [google.protobuf.Any](#google.protobuf.Any) | | |
+| `address` | [string](#string) | | The address of the oracle's contract |
+| `authority` | [string](#string) | | The signing authorities for the request |
-
+
+
+### MsgUpdateOracleResponse
+MsgUpdateOracleResponse is the response type for updating the oracle.
-### QueryNetAssetValuesRequest
-QueryNetAssetValuesRequest is the request type for the Query/NetAssetValues method.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | address or denom for the marker |
+
+
+
-
+
-### QueryNetAssetValuesResponse
-QueryNetAssetValuesRequest is the response type for the Query/NetAssetValues method.
+### Msg
+Msg
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `UpdateOracle` | [MsgUpdateOracleRequest](#provenance-oracle-v1-MsgUpdateOracleRequest) | [MsgUpdateOracleResponse](#provenance-oracle-v1-MsgUpdateOracleResponse) | UpdateOracle is the RPC endpoint for updating the oracle |
+| `SendQueryOracle` | [MsgSendQueryOracleRequest](#provenance-oracle-v1-MsgSendQueryOracleRequest) | [MsgSendQueryOracleResponse](#provenance-oracle-v1-MsgSendQueryOracleResponse) | SendQueryOracle sends a query to an oracle on another chain |
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `net_asset_values` | [NetAssetValue](#provenance.marker.v1.NetAssetValue) | repeated | net asset values for marker denom |
+
+
+Top
+## provenance/oracle/v1/query.proto
-
-### QueryParamsRequest
-QueryParamsRequest is the request type for the Query/Params RPC method.
+
+### QueryOracleAddressRequest
+QueryOracleAddressRequest queries for the address of the oracle.
-
-### QueryParamsResponse
-QueryParamsResponse is the response type for the Query/Params RPC method.
+
+
+### QueryOracleAddressResponse
+QueryOracleAddressResponse contains the address of the oracle.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.marker.v1.Params) | | params defines the parameters of the module. |
+| `address` | [string](#string) | | The address of the oracle |
-
+
-### QuerySupplyRequest
-QuerySupplyRequest is the request type for the Query/MarkerSupply method.
+### QueryOracleRequest
+QueryOracleRequest queries the module's oracle.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | address or denom for the marker |
+| `query` | [bytes](#bytes) | | Query contains the query data passed to the oracle. |
-
+
-### QuerySupplyResponse
-QuerySupplyResponse is the response type for the Query/MarkerSupply method.
+### QueryOracleResponse
+QueryOracleResponse contains the result of the query sent to the oracle.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | amount is the supply of the marker. |
+| `data` | [bytes](#bytes) | | Data contains the json data returned from the oracle. |
@@ -5597,1582 +6231,1469 @@ QuerySupplyResponse is the response type for the Query/MarkerSupply method.
-
+
### Query
-Query defines the gRPC querier service for marker module.
+Query defines the gRPC querier service for oracle module.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [QueryParamsRequest](#provenance.marker.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.marker.v1.QueryParamsResponse) | Params queries the parameters of x/bank module. | GET|/provenance/marker/v1/params|
-| `AllMarkers` | [QueryAllMarkersRequest](#provenance.marker.v1.QueryAllMarkersRequest) | [QueryAllMarkersResponse](#provenance.marker.v1.QueryAllMarkersResponse) | Returns a list of all markers on the blockchain | GET|/provenance/marker/v1/all|
-| `Marker` | [QueryMarkerRequest](#provenance.marker.v1.QueryMarkerRequest) | [QueryMarkerResponse](#provenance.marker.v1.QueryMarkerResponse) | query for a single marker by denom or address | GET|/provenance/marker/v1/detail/{id}|
-| `Holding` | [QueryHoldingRequest](#provenance.marker.v1.QueryHoldingRequest) | [QueryHoldingResponse](#provenance.marker.v1.QueryHoldingResponse) | query for all accounts holding the given marker coins | GET|/provenance/marker/v1/holding/{id}|
-| `Supply` | [QuerySupplyRequest](#provenance.marker.v1.QuerySupplyRequest) | [QuerySupplyResponse](#provenance.marker.v1.QuerySupplyResponse) | query for supply of coin on a marker account | GET|/provenance/marker/v1/supply/{id}|
-| `Escrow` | [QueryEscrowRequest](#provenance.marker.v1.QueryEscrowRequest) | [QueryEscrowResponse](#provenance.marker.v1.QueryEscrowResponse) | query for coins on a marker account | GET|/provenance/marker/v1/escrow/{id}|
-| `Access` | [QueryAccessRequest](#provenance.marker.v1.QueryAccessRequest) | [QueryAccessResponse](#provenance.marker.v1.QueryAccessResponse) | query for access records on an account | GET|/provenance/marker/v1/accesscontrol/{id}|
-| `DenomMetadata` | [QueryDenomMetadataRequest](#provenance.marker.v1.QueryDenomMetadataRequest) | [QueryDenomMetadataResponse](#provenance.marker.v1.QueryDenomMetadataResponse) | query for access records on an account | GET|/provenance/marker/v1/getdenommetadata/{denom}|
-| `AccountData` | [QueryAccountDataRequest](#provenance.marker.v1.QueryAccountDataRequest) | [QueryAccountDataResponse](#provenance.marker.v1.QueryAccountDataResponse) | query for account data associated with a denom | GET|/provenance/marker/v1/accountdata/{denom}|
-| `NetAssetValues` | [QueryNetAssetValuesRequest](#provenance.marker.v1.QueryNetAssetValuesRequest) | [QueryNetAssetValuesResponse](#provenance.marker.v1.QueryNetAssetValuesResponse) | NetAssetValues returns net asset values for marker | GET|/provenance/marker/v1/netassetvalues/{id}|
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `OracleAddress` | [QueryOracleAddressRequest](#provenance-oracle-v1-QueryOracleAddressRequest) | [QueryOracleAddressResponse](#provenance-oracle-v1-QueryOracleAddressResponse) | OracleAddress returns the address of the oracle |
+| `Oracle` | [QueryOracleRequest](#provenance-oracle-v1-QueryOracleRequest) | [QueryOracleResponse](#provenance-oracle-v1-QueryOracleResponse) | Oracle forwards a query to the module's oracle |
-
+
Top
-## provenance/marker/v1/si.proto
-
-
-
-
-
-
-
-### SIPrefix
-SIPrefix represents an International System of Units (SI) Prefix.
+## provenance/oracle/v1/event.proto
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| SI_PREFIX_NONE | 0 | 10^0 (none) |
-| SI_PREFIX_DEKA | 1 | 10^1 deka da |
-| SI_PREFIX_HECTO | 2 | 10^2 hecto h |
-| SI_PREFIX_KILO | 3 | 10^3 kilo k |
-| SI_PREFIX_MEGA | 6 | 10^6 mega M |
-| SI_PREFIX_GIGA | 9 | 10^9 giga G |
-| SI_PREFIX_TERA | 12 | 10^12 tera T |
-| SI_PREFIX_PETA | 15 | 10^15 peta P |
-| SI_PREFIX_EXA | 18 | 10^18 exa E |
-| SI_PREFIX_ZETTA | 21 | 10^21 zetta Z |
-| SI_PREFIX_YOTTA | 24 | 10^24 yotta Y |
-| SI_PREFIX_DECI | -1 | 10^-1 deci d |
-| SI_PREFIX_CENTI | -2 | 10^-2 centi c |
-| SI_PREFIX_MILLI | -3 | 10^-3 milli m |
-| SI_PREFIX_MICRO | -6 | 10^-6 micro µ |
-| SI_PREFIX_NANO | -9 | 10^-9 nano n |
-| SI_PREFIX_PICO | -12 | 10^-12 pico p |
-| SI_PREFIX_FEMTO | -15 | 10^-15 femto f |
-| SI_PREFIX_ATTO | -18 | 10^-18 atto a |
-| SI_PREFIX_ZEPTO | -21 | 10^-21 zepto z |
-| SI_PREFIX_YOCTO | -24 | 10^-24 yocto y |
-
+
-
+### EventOracleQueryError
+EventOracleQueryError is an event for when the chain receives an error response from an oracle query
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `channel` | [string](#string) | | channel is the local channel that the oracle query response was received from |
+| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
+| `error` | [string](#string) | | error is the error message received from the query |
-
-Top
-## provenance/marker/v1/tx.proto
-
+
-### MsgActivateRequest
-MsgActivateRequest defines the Msg/Activate request type
+### EventOracleQuerySuccess
+EventOracleQuerySuccess is an event for when the chain receives a successful response from an oracle query
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-
-
-
-
-
-
-
-
-### MsgActivateResponse
-MsgActivateResponse defines the Msg/Activate response type
+| `channel` | [string](#string) | | channel is the local channel that the oracle query response was received from |
+| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
+| `result` | [string](#string) | | result is the data received from the query |
-
+
-### MsgAddAccessRequest
-MsgAddAccessRequest defines the Msg/AddAccess request type
+### EventOracleQueryTimeout
+EventOracleQueryTimeout is an event for when the chain receives a timeout from an oracle query
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `access` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
+| `channel` | [string](#string) | | channel is the local channel that the oracle timeout was received from |
+| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
+
+
+
-
+
-### MsgAddAccessResponse
-MsgAddAccessResponse defines the Msg/AddAccess response type
+
+
+Top
+
+## provenance/oracle/v1/genesis.proto
-
+
-### MsgAddFinalizeActivateMarkerRequest
-MsgAddFinalizeActivateMarkerRequest defines the Msg/AddFinalizeActivateMarker request type
+### GenesisState
+GenesisState defines the oracle module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `manager` | [string](#string) | | |
-| `from_address` | [string](#string) | | |
-| `marker_type` | [MarkerType](#provenance.marker.v1.MarkerType) | | |
-| `access_list` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
-| `supply_fixed` | [bool](#bool) | | |
-| `allow_governance_control` | [bool](#bool) | | |
-| `allow_forced_transfer` | [bool](#bool) | | |
-| `required_attributes` | [string](#string) | repeated | |
-| `usd_cents` | [uint64](#uint64) | | **Deprecated.** |
-| `volume` | [uint64](#uint64) | | |
-| `usd_mills` | [uint64](#uint64) | | |
+| `port_id` | [string](#string) | | The port to assign to the module |
+| `oracle` | [string](#string) | | The address of the oracle |
+
-
+
+
+
+
+
-### MsgAddFinalizeActivateMarkerResponse
-MsgAddFinalizeActivateMarkerResponse defines the Msg/AddFinalizeActivateMarker response type
+
+Top
+## provenance/ibchooks/v1/tx.proto
-
+
-### MsgAddMarkerRequest
-MsgAddMarkerRequest defines the Msg/AddMarker request type.
-If being provided as a governance proposal, set the from_address to the gov module's account address.
+### MsgEmitIBCAck
+MsgEmitIBCAck is the IBC Acknowledgement
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `manager` | [string](#string) | | |
-| `from_address` | [string](#string) | | |
-| `status` | [MarkerStatus](#provenance.marker.v1.MarkerStatus) | | |
-| `marker_type` | [MarkerType](#provenance.marker.v1.MarkerType) | | |
-| `access_list` | [AccessGrant](#provenance.marker.v1.AccessGrant) | repeated | |
-| `supply_fixed` | [bool](#bool) | | |
-| `allow_governance_control` | [bool](#bool) | | |
-| `allow_forced_transfer` | [bool](#bool) | | |
-| `required_attributes` | [string](#string) | repeated | |
-| `usd_cents` | [uint64](#uint64) | | **Deprecated.** |
-| `volume` | [uint64](#uint64) | | |
-| `usd_mills` | [uint64](#uint64) | | |
+| `sender` | [string](#string) | | |
+| `packet_sequence` | [uint64](#uint64) | | |
+| `channel` | [string](#string) | | |
-
+
+
+### MsgEmitIBCAckResponse
+MsgEmitIBCAckResponse is the IBC Acknowledgement response
-### MsgAddMarkerResponse
-MsgAddMarkerResponse defines the Msg/AddMarker response type
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `contract_result` | [string](#string) | | |
+| `ibc_ack` | [string](#string) | | |
-
-### MsgAddNetAssetValuesRequest
-MsgAddNetAssetValuesRequest defines the Msg/AddNetAssetValues request type
+
+
+### MsgUpdateParamsRequest
+MsgUpdateParamsRequest is a request message for the UpdateParams endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `net_asset_values` | [NetAssetValue](#provenance.marker.v1.NetAssetValue) | repeated | |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-ibchooks-v1-Params) | | params are the new param values to set. |
-
+
-### MsgAddNetAssetValuesResponse
-MsgAddNetAssetValuesResponse defines the Msg/AddNetAssetValue response type
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the UpdateParams endpoint.
+
-
+
-### MsgBurnRequest
-MsgBurnRequest defines the Msg/Burn request type
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `administrator` | [string](#string) | | |
+
+
+### Msg
+Msg defines the Msg service.
+
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `EmitIBCAck` | [MsgEmitIBCAck](#provenance-ibchooks-v1-MsgEmitIBCAck) | [MsgEmitIBCAckResponse](#provenance-ibchooks-v1-MsgEmitIBCAckResponse) | EmitIBCAck checks the sender can emit the ack and writes the IBC acknowledgement |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-ibchooks-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-ibchooks-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the ibchooks module's params. |
+
+
+Top
+## provenance/ibchooks/v1/query.proto
-
-### MsgBurnResponse
-MsgBurnResponse defines the Msg/Burn response type
+
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
-
-### MsgCancelRequest
-MsgCancelRequest defines the Msg/Cancel request type
+
+
+
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `params` | [Params](#provenance-ibchooks-v1-Params) | | params defines the parameters of the module. |
+
+
+
+
+
-
-### MsgCancelResponse
-MsgCancelResponse defines the Msg/Cancel response type
+
+
+### Query
+Query defines the gRPC querier service for attribute module.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-ibchooks-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-ibchooks-v1-QueryParamsResponse) | Params queries params of the ihchooks module. |
+
+
+Top
-
+## provenance/ibchooks/v1/event.proto
-### MsgDeleteAccessRequest
-MsgDeleteAccessRequest defines the Msg/DeleteAccess request type
+
+
+
+
+### EventIBCHooksParamsUpdated
+EventIBCHooksParamsUpdated defines the event emitted after updating ibchooks parameters.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `removed_address` | [string](#string) | | |
+| `allowed_async_ack_contracts` | [string](#string) | repeated | |
+
-
+
-### MsgDeleteAccessResponse
-MsgDeleteAccessResponse defines the Msg/DeleteAccess response type
+
+
+
+Top
+## provenance/ibchooks/v1/genesis.proto
-
-### MsgDeleteRequest
-MsgDeleteRequest defines the Msg/Delete request type
+
+
+
+### GenesisState
+GenesisState is the IBC Hooks genesis state (params)
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `params` | [Params](#provenance-ibchooks-v1-Params) | | |
+
-
+
-### MsgDeleteResponse
-MsgDeleteResponse defines the Msg/Delete response type
+
+
+
+Top
+## provenance/ibchooks/v1/params.proto
-
-### MsgFinalizeRequest
-MsgFinalizeRequest defines the Msg/Finalize request type
+
+
+
+### Params
+Params defines the allowed async ack contracts
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
+| `allowed_async_ack_contracts` | [string](#string) | repeated | |
+
-
+
-### MsgFinalizeResponse
-MsgFinalizeResponse defines the Msg/Finalize response type
+
+
+
+
+Top
+## provenance/ibcratelimit/v1/tx.proto
-
-### MsgGrantAllowanceRequest
-MsgGrantAllowanceRequest validates permission to create a fee grant based on marker admin access. If
-successful a feegrant is recorded where the marker account itself is the grantor
+
+
+### MsgGovUpdateParamsRequest
+MsgGovUpdateParamsRequest is a request message for the GovUpdateParams endpoint.
+Deprecated: Use MsgUpdateParamsRequest instead.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `grantee` | [string](#string) | | grantee is the address of the user being granted an allowance of another user's funds. |
-| `allowance` | [google.protobuf.Any](#google.protobuf.Any) | | allowance can be any of basic and filtered fee allowance (fee FeeGrant module). |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-ibcratelimit-v1-Params) | | params are the new param values to set. |
-
+
-### MsgGrantAllowanceResponse
-MsgGrantAllowanceResponse defines the Msg/GrantAllowanceResponse response type.
+### MsgGovUpdateParamsResponse
+MsgGovUpdateParamsResponse is a response message for the GovUpdateParams endpoint.
+Deprecated: Use MsgUpdateParamsResponse instead.
-
+
-### MsgIbcTransferRequest
-MsgIbcTransferRequest defines the Msg/IbcTransfer request type for markers.
+### MsgUpdateParamsRequest
+MsgUpdateParamsRequest is a request message for the UpdateParams endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `transfer` | [ibc.applications.transfer.v1.MsgTransfer](#ibc.applications.transfer.v1.MsgTransfer) | | |
-| `administrator` | [string](#string) | | |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-ibcratelimit-v1-Params) | | params are the new param values to set. |
-
+
-### MsgIbcTransferResponse
-MsgIbcTransferResponse defines the Msg/IbcTransfer response type
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the UpdateParams endpoint.
+
-
+
-### MsgMintRequest
-MsgMintRequest defines the Msg/Mint request type
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `administrator` | [string](#string) | | |
+
+### Msg
+Msg is the service for ibcratelimit module's tx endpoints.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `GovUpdateParams` | [MsgGovUpdateParamsRequest](#provenance-ibcratelimit-v1-MsgGovUpdateParamsRequest) | [MsgGovUpdateParamsResponse](#provenance-ibcratelimit-v1-MsgGovUpdateParamsResponse) | GovUpdateParams is a governance proposal endpoint for updating the exchange module's params. Deprecated: Use UpdateParams instead. |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-ibcratelimit-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-ibcratelimit-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the ibcratelimit module's params. |
+
-
+
+Top
-### MsgMintResponse
-MsgMintResponse defines the Msg/Mint response type
+## provenance/ibcratelimit/v1/query.proto
+
+### ParamsRequest
+ParamsRequest is the request type for the Query/Params RPC method.
-
-### MsgSetAccountDataRequest
-MsgSetAccountDataRequest defines a msg to set/update/delete the account data for a marker.
-Signer must have deposit authority or be a gov proposal.
+
+
+
+
+
+### ParamsResponse
+ParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | The denomination of the marker to update. |
-| `value` | [string](#string) | | The desired accountdata value. |
-| `signer` | [string](#string) | | The signer of this message. Must have deposit authority or be the governance module account address. |
+| `params` | [Params](#provenance-ibcratelimit-v1-Params) | | params defines the parameters of the module. |
+
+
+
+
+
-
-### MsgSetAccountDataResponse
-MsgSetAccountDataResponse defines the Msg/SetAccountData response type
+
+
+### Query
+Query defines the gRPC querier service.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [ParamsRequest](#provenance-ibcratelimit-v1-ParamsRequest) | [ParamsResponse](#provenance-ibcratelimit-v1-ParamsResponse) | Params defines a gRPC query method that returns the ibcratelimit module's parameters. |
+
+
+Top
-
+## provenance/ibcratelimit/v1/event.proto
-### MsgSetDenomMetadataRequest
-MsgSetDenomMetadataRequest defines the Msg/SetDenomMetadata request type
+
+
+
+
+### EventAckRevertFailure
+EventAckRevertFailure is emitted when an Ack revert fails
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos.bank.v1beta1.Metadata) | | |
-| `administrator` | [string](#string) | | |
+| `module` | [string](#string) | | module is the name of the module that emitted it. |
+| `packet` | [string](#string) | | packet is the packet received on acknowledgement. |
+| `ack` | [string](#string) | | ack is the packet's inner acknowledgement message. |
-
+
-### MsgSetDenomMetadataResponse
-MsgSetDenomMetadataResponse defines the Msg/SetDenomMetadata response type
+### EventParamsUpdated
+EventParamsUpdated is an event emitted when the ibcratelimit module's params have been updated.
-
+
-### MsgSupplyIncreaseProposalRequest
-MsgSupplyIncreaseProposalRequest defines a governance proposal to administer a marker and increase total supply of
-the marker through minting coin and placing it within the marker or assigning it directly to an account
+### EventTimeoutRevertFailure
+EventTimeoutRevertFailure is emitted when a Timeout revert fails
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `target_address` | [string](#string) | | an optional target address for the minted coin from this request |
-| `authority` | [string](#string) | | signer of the proposal |
+| `module` | [string](#string) | | module is the name of the module that emitted it. |
+| `packet` | [string](#string) | | packet is the packet received on timeout. |
+
-
+
-### MsgSupplyIncreaseProposalResponse
-MsgSupplyIncreaseProposalResponse defines the Msg/SupplyIncreaseProposal response type
+
+
+
+Top
+## provenance/ibcratelimit/v1/genesis.proto
-
-### MsgTransferRequest
-MsgTransferRequest defines the Msg/Transfer request type
+
+
+
+### GenesisState
+GenesisState defines the ibcratelimit module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | |
-| `administrator` | [string](#string) | | |
-| `from_address` | [string](#string) | | |
-| `to_address` | [string](#string) | | |
+| `params` | [Params](#provenance-ibcratelimit-v1-Params) | | params are all the parameters of the module. |
+
-
+
-### MsgTransferResponse
-MsgTransferResponse defines the Msg/Transfer response type
+
+
+
+
+Top
+## provenance/ibcratelimit/v1/params.proto
-
-### MsgUpdateForcedTransferRequest
-MsgUpdateForcedTransferRequest defines a msg to update the allow_forced_transfer field of a marker.
-It is only usable via governance proposal.
+
+
+### Params
+Params defines the parameters for the ibcratelimit module.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | The denomination of the marker to update. |
-| `allow_forced_transfer` | [bool](#bool) | | Whether an admin can transfer restricted coins from a 3rd-party account without their signature. |
-| `authority` | [string](#string) | | The signer of this message. Must be the governance module account address. |
+| `contract_address` | [string](#string) | | contract_address is the address of the rate limiter contract. |
+
-
+
-### MsgUpdateForcedTransferResponse
-MsgUpdateForcedTransferResponse defines the Msg/UpdateForcedTransfer response type
+
+
+
+Top
+## provenance/marker/v1/tx.proto
-
-### MsgUpdateRequiredAttributesRequest
-MsgUpdateRequiredAttributesRequest defines a msg to update/add/remove required attributes from a resticted marker
-signer must have transfer authority to change attributes, to update attribute add current to remove list and new to
-add list
+
+
+
+### MsgActivateRequest
+MsgActivateRequest defines the Msg/Activate request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | The denomination of the marker to update. |
-| `remove_required_attributes` | [string](#string) | repeated | List of required attributes to remove from marker. |
-| `add_required_attributes` | [string](#string) | repeated | List of required attributes to add to marker. |
-| `transfer_authority` | [string](#string) | | The signer of the message. Must have transfer authority to marker or be governance module account address. |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### MsgUpdateRequiredAttributesResponse
-MsgUpdateRequiredAttributesResponse defines the Msg/UpdateRequiredAttributes response type
+### MsgActivateResponse
+MsgActivateResponse defines the Msg/Activate response type
-
+
-### MsgUpdateSendDenyListRequest
-MsgUpdateSendDenyListRequest defines a msg to add/remove addresses to send deny list for a resticted marker
-signer must have transfer authority
+### MsgAddAccessRequest
+MsgAddAccessRequest defines the Msg/AddAccess request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | The denomination of the marker to update. |
-| `remove_denied_addresses` | [string](#string) | repeated | List of bech32 addresses to remove from the deny send list. |
-| `add_denied_addresses` | [string](#string) | repeated | List of bech32 addresses to add to the deny send list. |
-| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `access` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
-
+
-### MsgUpdateSendDenyListResponse
-MsgUpdateSendDenyListResponse defines the Msg/UpdateSendDenyList response type
+### MsgAddAccessResponse
+MsgAddAccessResponse defines the Msg/AddAccess response type
-
+
-### MsgWithdrawRequest
-MsgWithdrawRequest defines the Msg/Withdraw request type
+### MsgAddFinalizeActivateMarkerRequest
+MsgAddFinalizeActivateMarkerRequest defines the Msg/AddFinalizeActivateMarker request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `denom` | [string](#string) | | |
-| `administrator` | [string](#string) | | |
-| `to_address` | [string](#string) | | |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `manager` | [string](#string) | | |
+| `from_address` | [string](#string) | | |
+| `marker_type` | [MarkerType](#provenance-marker-v1-MarkerType) | | |
+| `access_list` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
+| `supply_fixed` | [bool](#bool) | | |
+| `allow_governance_control` | [bool](#bool) | | |
+| `allow_forced_transfer` | [bool](#bool) | | |
+| `required_attributes` | [string](#string) | repeated | |
+| `usd_cents` | [uint64](#uint64) | | **Deprecated.** |
+| `volume` | [uint64](#uint64) | | |
+| `usd_mills` | [uint64](#uint64) | | |
-
+
-### MsgWithdrawResponse
-MsgWithdrawResponse defines the Msg/Withdraw response type
+### MsgAddFinalizeActivateMarkerResponse
+MsgAddFinalizeActivateMarkerResponse defines the Msg/AddFinalizeActivateMarker response type
-
-
+
-
+### MsgAddMarkerRequest
+MsgAddMarkerRequest defines the Msg/AddMarker request type.
+If being provided as a governance proposal, set the from_address to the gov module's account address.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `manager` | [string](#string) | | |
+| `from_address` | [string](#string) | | |
+| `status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | |
+| `marker_type` | [MarkerType](#provenance-marker-v1-MarkerType) | | |
+| `access_list` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
+| `supply_fixed` | [bool](#bool) | | |
+| `allow_governance_control` | [bool](#bool) | | |
+| `allow_forced_transfer` | [bool](#bool) | | |
+| `required_attributes` | [string](#string) | repeated | |
+| `usd_cents` | [uint64](#uint64) | | **Deprecated.** |
+| `volume` | [uint64](#uint64) | | |
+| `usd_mills` | [uint64](#uint64) | | |
-### Msg
-Msg defines the Marker Msg service.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Finalize` | [MsgFinalizeRequest](#provenance.marker.v1.MsgFinalizeRequest) | [MsgFinalizeResponse](#provenance.marker.v1.MsgFinalizeResponse) | Finalize | |
-| `Activate` | [MsgActivateRequest](#provenance.marker.v1.MsgActivateRequest) | [MsgActivateResponse](#provenance.marker.v1.MsgActivateResponse) | Activate | |
-| `Cancel` | [MsgCancelRequest](#provenance.marker.v1.MsgCancelRequest) | [MsgCancelResponse](#provenance.marker.v1.MsgCancelResponse) | Cancel | |
-| `Delete` | [MsgDeleteRequest](#provenance.marker.v1.MsgDeleteRequest) | [MsgDeleteResponse](#provenance.marker.v1.MsgDeleteResponse) | Delete | |
-| `Mint` | [MsgMintRequest](#provenance.marker.v1.MsgMintRequest) | [MsgMintResponse](#provenance.marker.v1.MsgMintResponse) | Mint | |
-| `Burn` | [MsgBurnRequest](#provenance.marker.v1.MsgBurnRequest) | [MsgBurnResponse](#provenance.marker.v1.MsgBurnResponse) | Burn | |
-| `AddAccess` | [MsgAddAccessRequest](#provenance.marker.v1.MsgAddAccessRequest) | [MsgAddAccessResponse](#provenance.marker.v1.MsgAddAccessResponse) | AddAccess | |
-| `DeleteAccess` | [MsgDeleteAccessRequest](#provenance.marker.v1.MsgDeleteAccessRequest) | [MsgDeleteAccessResponse](#provenance.marker.v1.MsgDeleteAccessResponse) | DeleteAccess | |
-| `Withdraw` | [MsgWithdrawRequest](#provenance.marker.v1.MsgWithdrawRequest) | [MsgWithdrawResponse](#provenance.marker.v1.MsgWithdrawResponse) | Withdraw | |
-| `AddMarker` | [MsgAddMarkerRequest](#provenance.marker.v1.MsgAddMarkerRequest) | [MsgAddMarkerResponse](#provenance.marker.v1.MsgAddMarkerResponse) | AddMarker | |
-| `Transfer` | [MsgTransferRequest](#provenance.marker.v1.MsgTransferRequest) | [MsgTransferResponse](#provenance.marker.v1.MsgTransferResponse) | Transfer marker denominated coin between accounts | |
-| `IbcTransfer` | [MsgIbcTransferRequest](#provenance.marker.v1.MsgIbcTransferRequest) | [MsgIbcTransferResponse](#provenance.marker.v1.MsgIbcTransferResponse) | Transfer over ibc any marker(including restricted markers) between ibc accounts. The relayer is still needed to accomplish ibc middleware relays. | |
-| `SetDenomMetadata` | [MsgSetDenomMetadataRequest](#provenance.marker.v1.MsgSetDenomMetadataRequest) | [MsgSetDenomMetadataResponse](#provenance.marker.v1.MsgSetDenomMetadataResponse) | Allows Denom Metadata (see bank module) to be set for the Marker's Denom | |
-| `GrantAllowance` | [MsgGrantAllowanceRequest](#provenance.marker.v1.MsgGrantAllowanceRequest) | [MsgGrantAllowanceResponse](#provenance.marker.v1.MsgGrantAllowanceResponse) | GrantAllowance grants fee allowance to the grantee on the granter's account with the provided expiration time. | |
-| `AddFinalizeActivateMarker` | [MsgAddFinalizeActivateMarkerRequest](#provenance.marker.v1.MsgAddFinalizeActivateMarkerRequest) | [MsgAddFinalizeActivateMarkerResponse](#provenance.marker.v1.MsgAddFinalizeActivateMarkerResponse) | AddFinalizeActivateMarker | |
-| `SupplyIncreaseProposal` | [MsgSupplyIncreaseProposalRequest](#provenance.marker.v1.MsgSupplyIncreaseProposalRequest) | [MsgSupplyIncreaseProposalResponse](#provenance.marker.v1.MsgSupplyIncreaseProposalResponse) | SupplyIncreaseProposal can only be called via gov proposal | |
-| `UpdateRequiredAttributes` | [MsgUpdateRequiredAttributesRequest](#provenance.marker.v1.MsgUpdateRequiredAttributesRequest) | [MsgUpdateRequiredAttributesResponse](#provenance.marker.v1.MsgUpdateRequiredAttributesResponse) | UpdateRequiredAttributes will only succeed if signer has transfer authority | |
-| `UpdateForcedTransfer` | [MsgUpdateForcedTransferRequest](#provenance.marker.v1.MsgUpdateForcedTransferRequest) | [MsgUpdateForcedTransferResponse](#provenance.marker.v1.MsgUpdateForcedTransferResponse) | UpdateForcedTransfer updates the allow_forced_transfer field of a marker via governance proposal. | |
-| `SetAccountData` | [MsgSetAccountDataRequest](#provenance.marker.v1.MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance.marker.v1.MsgSetAccountDataResponse) | SetAccountData sets the accountdata for a denom. Signer must have deposit authority. | |
-| `UpdateSendDenyList` | [MsgUpdateSendDenyListRequest](#provenance.marker.v1.MsgUpdateSendDenyListRequest) | [MsgUpdateSendDenyListResponse](#provenance.marker.v1.MsgUpdateSendDenyListResponse) | UpdateSendDenyList will only succeed if signer has admin authority | |
-| `AddNetAssetValues` | [MsgAddNetAssetValuesRequest](#provenance.marker.v1.MsgAddNetAssetValuesRequest) | [MsgAddNetAssetValuesResponse](#provenance.marker.v1.MsgAddNetAssetValuesResponse) | AddNetAssetValues set the net asset value for a marker | |
-
-
-Top
+
-## provenance/metadata/v1/events.proto
+### MsgAddMarkerResponse
+MsgAddMarkerResponse defines the Msg/AddMarker response type
-
-### EventContractSpecificationCreated
-EventContractSpecificationCreated is an event message indicating a contract specification has been created.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was created. |
+
+### MsgAddNetAssetValuesRequest
+MsgAddNetAssetValuesRequest defines the Msg/AddNetAssetValues request type
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `net_asset_values` | [NetAssetValue](#provenance-marker-v1-NetAssetValue) | repeated | |
-
-### EventContractSpecificationDeleted
-EventContractSpecificationDeleted is an event message indicating a contract specification has been deleted.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was deleted. |
+
+### MsgAddNetAssetValuesResponse
+MsgAddNetAssetValuesResponse defines the Msg/AddNetAssetValue response type
-
-### EventContractSpecificationUpdated
-EventContractSpecificationUpdated is an event message indicating a contract specification has been updated.
+
+
+### MsgBurnRequest
+MsgBurnRequest defines the Msg/Burn request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was updated. |
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `administrator` | [string](#string) | | |
-
-### EventOSLocatorCreated
-EventOSLocatorCreated is an event message indicating an object store locator has been created.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `owner` | [string](#string) | | owner is the owner in the object store locator that was created. |
+### MsgBurnResponse
+MsgBurnResponse defines the Msg/Burn response type
-
+
-### EventOSLocatorDeleted
-EventOSLocatorDeleted is an event message indicating an object store locator has been deleted.
+### MsgCancelRequest
+MsgCancelRequest defines the Msg/Cancel request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `owner` | [string](#string) | | owner is the owner in the object store locator that was deleted. |
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-### EventOSLocatorUpdated
-EventOSLocatorUpdated is an event message indicating an object store locator has been updated.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `owner` | [string](#string) | | owner is the owner in the object store locator that was updated. |
+### MsgCancelResponse
+MsgCancelResponse defines the Msg/Cancel response type
-
+
-### EventRecordCreated
-EventRecordCreated is an event message indicating a record has been created.
+### MsgChangeStatusProposalRequest
+MsgChangeStatusProposalRequest defines the Msg/ChangeStatusProposal request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_addr` | [string](#string) | | record_addr is the bech32 address string of the record id that was created. |
-| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id this record belongs to. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belongs to. |
-
-
+| `denom` | [string](#string) | | |
+| `new_status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
-### EventRecordDeleted
-EventRecordDeleted is an event message indicating a record has been deleted.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `record_addr` | [string](#string) | | record is the bech32 address string of the record id that was deleted. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belonged to. |
+### MsgChangeStatusProposalResponse
+MsgChangeStatusProposalResponse defines the Msg/ChangeStatusProposal response type
-
+
-### EventRecordSpecificationCreated
-EventRecordSpecificationCreated is an event message indicating a record specification has been created.
+### MsgDeleteAccessRequest
+MsgDeleteAccessRequest defines the Msg/DeleteAccess request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was created. |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `removed_address` | [string](#string) | | |
-
-### EventRecordSpecificationDeleted
-EventRecordSpecificationDeleted is an event message indicating a record specification has been deleted.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was deleted. |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
+### MsgDeleteAccessResponse
+MsgDeleteAccessResponse defines the Msg/DeleteAccess response type
-
+
-### EventRecordSpecificationUpdated
-EventRecordSpecificationUpdated is an event message indicating a record specification has been updated.
+### MsgDeleteRequest
+MsgDeleteRequest defines the Msg/Delete request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was updated. |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-### EventRecordUpdated
-EventRecordUpdated is an event message indicating a record has been updated.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `record_addr` | [string](#string) | | record_addr is the bech32 address string of the record id that was updated. |
-| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id this record belongs to. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belongs to. |
+### MsgDeleteResponse
+MsgDeleteResponse defines the Msg/Delete response type
-
+
-### EventScopeCreated
-EventScopeCreated is an event message indicating a scope has been created.
+### MsgFinalizeRequest
+MsgFinalizeRequest defines the Msg/Finalize request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was created. |
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-### EventScopeDeleted
-EventScopeDeleted is an event message indicating a scope has been deleted.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was deleted. |
+### MsgFinalizeResponse
+MsgFinalizeResponse defines the Msg/Finalize response type
-
+
-### EventScopeSpecificationCreated
-EventScopeSpecificationCreated is an event message indicating a scope specification has been created.
+### MsgGrantAllowanceRequest
+MsgGrantAllowanceRequest validates permission to create a fee grant based on marker admin access. If
+successful a feegrant is recorded where the marker account itself is the grantor
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was created. |
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `grantee` | [string](#string) | | grantee is the address of the user being granted an allowance of another user's funds. |
+| `allowance` | [google.protobuf.Any](#google-protobuf-Any) | | allowance can be any of basic and filtered fee allowance (fee FeeGrant module). |
-
-### EventScopeSpecificationDeleted
-EventScopeSpecificationDeleted is an event message indicating a scope specification has been deleted.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was deleted. |
+### MsgGrantAllowanceResponse
+MsgGrantAllowanceResponse defines the Msg/GrantAllowanceResponse response type.
-
+
-### EventScopeSpecificationUpdated
-EventScopeSpecificationUpdated is an event message indicating a scope specification has been updated.
+### MsgIbcTransferRequest
+MsgIbcTransferRequest defines the Msg/IbcTransfer request type for markers.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was updated. |
-
-
+| `transfer` | [ibc.applications.transfer.v1.MsgTransfer](#ibc-applications-transfer-v1-MsgTransfer) | | |
+| `administrator` | [string](#string) | | |
-
-### EventScopeUpdated
-EventScopeUpdated is an event message indicating a scope has been updated.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was updated. |
+### MsgIbcTransferResponse
+MsgIbcTransferResponse defines the Msg/IbcTransfer response type
-
+
-### EventSessionCreated
-EventSessionCreated is an event message indicating a session has been created.
+### MsgMintRequest
+MsgMintRequest defines the Msg/Mint request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was created. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `administrator` | [string](#string) | | |
-
-### EventSessionDeleted
-EventSessionDeleted is an event message indicating a session has been deleted.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was deleted. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
+### MsgMintResponse
+MsgMintResponse defines the Msg/Mint response type
-
+
-### EventSessionUpdated
-EventSessionUpdated is an event message indicating a session has been updated.
+### MsgRemoveAdministratorProposalRequest
+MsgRemoveAdministratorProposalRequest defines the Msg/RemoveAdministratorProposal request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was updated. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
-
-
-
-
+| `denom` | [string](#string) | | |
+| `removed_address` | [string](#string) | repeated | |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
-### EventSetNetAssetValue
-EventSetNetAssetValue event emitted when Net Asset Value for a scope is update or added
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_id` | [string](#string) | | |
-| `price` | [string](#string) | | |
-| `source` | [string](#string) | | |
+
+### MsgRemoveAdministratorProposalResponse
+MsgRemoveAdministratorProposalResponse defines the Msg/RemoveAdministratorProposal response type
-
-### EventTxCompleted
-EventTxCompleted is an event message indicating that a TX has completed.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `module` | [string](#string) | | module is the module the TX belongs to. |
-| `endpoint` | [string](#string) | | endpoint is the rpc endpoint that was just completed. |
-| `signers` | [string](#string) | repeated | signers are the bech32 address strings of the signers of this TX. |
+### MsgSetAccountDataRequest
+MsgSetAccountDataRequest defines a msg to set/update/delete the account data for a marker.
+Signer must have deposit authority or be a gov proposal.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | The denomination of the marker to update. |
+| `value` | [string](#string) | | The desired accountdata value. |
+| `signer` | [string](#string) | | The signer of this message. Must have deposit authority or be the governance module account address. |
-
-
-
-
+
+### MsgSetAccountDataResponse
+MsgSetAccountDataResponse defines the Msg/SetAccountData response type
-
-Top
-## provenance/metadata/v1/metadata.proto
-
+
-### ContractSpecIdInfo
-ContractSpecIdInfo contains various info regarding a contract specification id.
+### MsgSetAdministratorProposalRequest
+MsgSetAdministratorProposalRequest defines the Msg/SetAdministratorProposal request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_spec_id` | [bytes](#bytes) | | contract_spec_id is the raw bytes of the contract specification address. |
-| `contract_spec_id_prefix` | [bytes](#bytes) | | contract_spec_id_prefix is the prefix portion of the contract_spec_id. |
-| `contract_spec_id_contract_spec_uuid` | [bytes](#bytes) | | contract_spec_id_contract_spec_uuid is the contract_spec_uuid portion of the contract_spec_id. |
-| `contract_spec_addr` | [string](#string) | | contract_spec_addr is the bech32 string version of the contract_spec_id. |
-| `contract_spec_uuid` | [string](#string) | | contract_spec_uuid is the uuid hex string of the contract_spec_id_contract_spec_uuid. |
+| `denom` | [string](#string) | | |
+| `access` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
+
-### Params
-Params defines the set of params for the metadata module.
+### MsgSetAdministratorProposalResponse
+MsgSetAdministratorProposalResponse defines the Msg/SetAdministratorProposal response type
-
+
-### RecordIdInfo
-RecordIdInfo contains various info regarding a record id.
+### MsgSetDenomMetadataProposalRequest
+MsgSetDenomMetadataProposalRequest defines the Msg/SetDenomMetadataProposal request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_id` | [bytes](#bytes) | | record_id is the raw bytes of the record address. |
-| `record_id_prefix` | [bytes](#bytes) | | record_id_prefix is the prefix portion of the record_id. |
-| `record_id_scope_uuid` | [bytes](#bytes) | | record_id_scope_uuid is the scope_uuid portion of the record_id. |
-| `record_id_hashed_name` | [bytes](#bytes) | | record_id_hashed_name is the hashed name portion of the record_id. |
-| `record_addr` | [string](#string) | | record_addr is the bech32 string version of the record_id. |
-| `scope_id_info` | [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo) | | scope_id_info is information about the scope id referenced in the record_id. |
-
-
+| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos-bank-v1beta1-Metadata) | | |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
-### RecordSpecIdInfo
-RecordSpecIdInfo contains various info regarding a record specification id.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `record_spec_id` | [bytes](#bytes) | | record_spec_id is the raw bytes of the record specification address. |
-| `record_spec_id_prefix` | [bytes](#bytes) | | record_spec_id_prefix is the prefix portion of the record_spec_id. |
-| `record_spec_id_contract_spec_uuid` | [bytes](#bytes) | | record_spec_id_contract_spec_uuid is the contract_spec_uuid portion of the record_spec_id. |
-| `record_spec_id_hashed_name` | [bytes](#bytes) | | record_spec_id_hashed_name is the hashed name portion of the record_spec_id. |
-| `record_spec_addr` | [string](#string) | | record_spec_addr is the bech32 string version of the record_spec_id. |
-| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo) | | contract_spec_id_info is information about the contract spec id referenced in the record_spec_id. |
+### MsgSetDenomMetadataProposalResponse
+MsgSetDenomMetadataProposalResponse defines the Msg/SetDenomMetadataProposal response type
-
+
-### ScopeIdInfo
-ScopeIdInfo contains various info regarding a scope id.
+### MsgSetDenomMetadataRequest
+MsgSetDenomMetadataRequest defines the Msg/SetDenomMetadata request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_id` | [bytes](#bytes) | | scope_id is the raw bytes of the scope address. |
-| `scope_id_prefix` | [bytes](#bytes) | | scope_id_prefix is the prefix portion of the scope_id. |
-| `scope_id_scope_uuid` | [bytes](#bytes) | | scope_id_scope_uuid is the scope_uuid portion of the scope_id. |
-| `scope_addr` | [string](#string) | | scope_addr is the bech32 string version of the scope_id. |
-| `scope_uuid` | [string](#string) | | scope_uuid is the uuid hex string of the scope_id_scope_uuid. |
-
-
+| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos-bank-v1beta1-Metadata) | | |
+| `administrator` | [string](#string) | | |
-
-### ScopeSpecIdInfo
-ScopeSpecIdInfo contains various info regarding a scope specification id.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_spec_id` | [bytes](#bytes) | | scope_spec_id is the raw bytes of the scope specification address. |
-| `scope_spec_id_prefix` | [bytes](#bytes) | | scope_spec_id_prefix is the prefix portion of the scope_spec_id. |
-| `scope_spec_id_scope_spec_uuid` | [bytes](#bytes) | | scope_spec_id_scope_spec_uuid is the scope_spec_uuid portion of the scope_spec_id. |
-| `scope_spec_addr` | [string](#string) | | scope_spec_addr is the bech32 string version of the scope_spec_id. |
-| `scope_spec_uuid` | [string](#string) | | scope_spec_uuid is the uuid hex string of the scope_spec_id_scope_spec_uuid. |
+### MsgSetDenomMetadataResponse
+MsgSetDenomMetadataResponse defines the Msg/SetDenomMetadata response type
-
+
-### SessionIdInfo
-SessionIdInfo contains various info regarding a session id.
+### MsgSupplyDecreaseProposalRequest
+MsgSupplyDecreaseProposalRequest defines a governance proposal to decrease total supply of the marker
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `session_id` | [bytes](#bytes) | | session_id is the raw bytes of the session address. |
-| `session_id_prefix` | [bytes](#bytes) | | session_id_prefix is the prefix portion of the session_id. |
-| `session_id_scope_uuid` | [bytes](#bytes) | | session_id_scope_uuid is the scope_uuid portion of the session_id. |
-| `session_id_session_uuid` | [bytes](#bytes) | | session_id_session_uuid is the session_uuid portion of the session_id. |
-| `session_addr` | [string](#string) | | session_addr is the bech32 string version of the session_id. |
-| `session_uuid` | [string](#string) | | session_uuid is the uuid hex string of the session_id_session_uuid. |
-| `scope_id_info` | [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo) | | scope_id_info is information about the scope id referenced in the session_id. |
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `authority` | [string](#string) | | signer of the proposal |
-
-
-
-
+
+### MsgSupplyDecreaseProposalResponse
+MsgSupplyIncreaseProposalResponse defines the Msg/SupplyDecreaseProposal response type
-
-Top
-## provenance/metadata/v1/specification.proto
-
+
-### ContractSpecification
-ContractSpecification defines the required parties, resources, conditions, and consideration outputs for a contract
+### MsgSupplyIncreaseProposalRequest
+MsgSupplyIncreaseProposalRequest defines a governance proposal to administer a marker and increase total supply of
+the marker through minting coin and placing it within the marker or assigning it directly to an account
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
-| `description` | [Description](#provenance.metadata.v1.Description) | | Description information for this contract specification |
-| `owner_addresses` | [string](#string) | repeated | Address of the account that owns this specificaiton |
-| `parties_involved` | [PartyType](#provenance.metadata.v1.PartyType) | repeated | a list of party roles that must be fullfilled when signing a transaction for this contract specification |
-| `resource_id` | [bytes](#bytes) | | the address of a record on chain that represents this contract |
-| `hash` | [string](#string) | | the hash of contract binary (off-chain instance) |
-| `class_name` | [string](#string) | | name of the class/type of this contract executable |
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `target_address` | [string](#string) | | an optional target address for the minted coin from this request |
+| `authority` | [string](#string) | | signer of the proposal |
-
-### Description
-Description holds general information that is handy to associate with a structure.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | A Name for this thing. |
-| `description` | [string](#string) | | A description of this thing. |
-| `website_url` | [string](#string) | | URL to find even more info. |
-| `icon_url` | [string](#string) | | URL of an icon. |
+### MsgSupplyIncreaseProposalResponse
+MsgSupplyIncreaseProposalResponse defines the Msg/SupplyIncreaseProposal response type
-
+
-### InputSpecification
-InputSpecification defines a name, type_name, and source reference (either on or off chain) to define an input
-parameter
+### MsgTransferRequest
+MsgTransferRequest defines the Msg/Transfer request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | name for this input |
-| `type_name` | [string](#string) | | a type_name (typically a proto name or class_name) |
-| `record_id` | [bytes](#bytes) | | the address of a record on chain (For Established Records) |
-| `hash` | [string](#string) | | the hash of an off-chain piece of information (For Proposed Records) |
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `administrator` | [string](#string) | | |
+| `from_address` | [string](#string) | | |
+| `to_address` | [string](#string) | | |
-
-### RecordSpecification
-RecordSpecification defines the specification for a Record including allowed/required inputs/outputs
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
-| `name` | [string](#string) | | Name of Record that will be created when this specification is used |
-| `inputs` | [InputSpecification](#provenance.metadata.v1.InputSpecification) | repeated | A set of inputs that must be satisified to apply this RecordSpecification and create a Record |
-| `type_name` | [string](#string) | | A type name for data associated with this record (typically a class or proto name) |
-| `result_type` | [DefinitionType](#provenance.metadata.v1.DefinitionType) | | Type of result for this record specification (must be RECORD or RECORD_LIST) |
-| `responsible_parties` | [PartyType](#provenance.metadata.v1.PartyType) | repeated | Type of party responsible for this record |
+### MsgTransferResponse
+MsgTransferResponse defines the Msg/Transfer response type
-
+
-### ScopeSpecification
-ScopeSpecification defines the required parties, resources, conditions, and consideration outputs for a contract
+### MsgUpdateForcedTransferRequest
+MsgUpdateForcedTransferRequest defines a msg to update the allow_forced_transfer field of a marker.
+It is only usable via governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
-| `description` | [Description](#provenance.metadata.v1.Description) | | General information about this scope specification. |
-| `owner_addresses` | [string](#string) | repeated | Addresses of the owners of this scope specification. |
-| `parties_involved` | [PartyType](#provenance.metadata.v1.PartyType) | repeated | A list of parties that must be present on a scope (and their associated roles) |
-| `contract_spec_ids` | [bytes](#bytes) | repeated | A list of contract specification ids allowed for a scope based on this specification. |
+| `denom` | [string](#string) | | The denomination of the marker to update. |
+| `allow_forced_transfer` | [bool](#bool) | | Whether an admin can transfer restricted coins from a 3rd-party account without their signature. |
+| `authority` | [string](#string) | | The signer of this message. Must be the governance module account address. |
-
+
-
+### MsgUpdateForcedTransferResponse
+MsgUpdateForcedTransferResponse defines the Msg/UpdateForcedTransfer response type
-### DefinitionType
-DefinitionType indicates the required definition type for this value
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| DEFINITION_TYPE_UNSPECIFIED | 0 | DEFINITION_TYPE_UNSPECIFIED indicates an unknown/invalid value |
-| DEFINITION_TYPE_PROPOSED | 1 | DEFINITION_TYPE_PROPOSED indicates a proposed value is used here (a record that is not on-chain) |
-| DEFINITION_TYPE_RECORD | 2 | DEFINITION_TYPE_RECORD indicates the value must be a reference to a record on chain |
-| DEFINITION_TYPE_RECORD_LIST | 3 | DEFINITION_TYPE_RECORD_LIST indicates the value maybe a reference to a collection of values on chain having the same name |
-
-### PartyType
-PartyType are the different roles parties on a contract may use
+
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| PARTY_TYPE_UNSPECIFIED | 0 | PARTY_TYPE_UNSPECIFIED is an error condition |
-| PARTY_TYPE_ORIGINATOR | 1 | PARTY_TYPE_ORIGINATOR is an asset originator |
-| PARTY_TYPE_SERVICER | 2 | PARTY_TYPE_SERVICER provides debt servicing functions |
-| PARTY_TYPE_INVESTOR | 3 | PARTY_TYPE_INVESTOR is a generic investor |
-| PARTY_TYPE_CUSTODIAN | 4 | PARTY_TYPE_CUSTODIAN is an entity that provides custodian services for assets |
-| PARTY_TYPE_OWNER | 5 | PARTY_TYPE_OWNER indicates this party is an owner of the item |
-| PARTY_TYPE_AFFILIATE | 6 | PARTY_TYPE_AFFILIATE is a party with an affiliate agreement |
-| PARTY_TYPE_OMNIBUS | 7 | PARTY_TYPE_OMNIBUS is a special type of party that controls an omnibus bank account |
-| PARTY_TYPE_PROVENANCE | 8 | PARTY_TYPE_PROVENANCE is used to indicate this party represents the blockchain or a smart contract action |
-| PARTY_TYPE_CONTROLLER | 10 | PARTY_TYPE_CONTROLLER is an entity which controls a specific asset on chain (ie enote) |
-| PARTY_TYPE_VALIDATOR | 11 | PARTY_TYPE_VALIDATOR is an entity which validates given assets on chain |
+### MsgUpdateParamsRequest
+MsgUpdateParamsRequest is a request message for the UpdateParams endpoint.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-marker-v1-Params) | | params are the new param values to set. |
-
-
-
-Top
-## provenance/metadata/v1/scope.proto
+
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the UpdateParams endpoint.
-
-### AuditFields
-AuditFields capture information about the last account to make modifications and when they were made
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `created_date` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | the date/time when this entry was created |
-| `created_by` | [string](#string) | | the address of the account that created this record |
-| `updated_date` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | the date/time when this entry was last updated |
-| `updated_by` | [string](#string) | | the address of the account that modified this record |
-| `version` | [uint32](#uint32) | | an optional version number that is incremented with each update |
-| `message` | [string](#string) | | an optional message associated with the creation/update event |
+
+### MsgUpdateRequiredAttributesRequest
+MsgUpdateRequiredAttributesRequest defines a msg to update/add/remove required attributes from a resticted marker
+signer must have transfer authority to change attributes, to update attribute add current to remove list and new to
+add list
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | The denomination of the marker to update. |
+| `remove_required_attributes` | [string](#string) | repeated | List of required attributes to remove from marker. |
+| `add_required_attributes` | [string](#string) | repeated | List of required attributes to add to marker. |
+| `transfer_authority` | [string](#string) | | The signer of the message. Must have transfer authority to marker or be governance module account address. |
-
-### NetAssetValue
-NetAssetValue defines a scope's net asset value
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | price is the complete value of the asset's volume |
-| `updated_block_height` | [uint64](#uint64) | | updated_block_height is the block height of last update |
+
+### MsgUpdateRequiredAttributesResponse
+MsgUpdateRequiredAttributesResponse defines the Msg/UpdateRequiredAttributes response type
-
-### Party
-A Party is an address with/in a given role associated with a contract
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address of the account (on chain) |
-| `role` | [PartyType](#provenance.metadata.v1.PartyType) | | a role for this account within the context of the processes used |
-| `optional` | [bool](#bool) | | whether this party's signature is optional |
+### MsgUpdateSendDenyListRequest
+MsgUpdateSendDenyListRequest defines a msg to add/remove addresses to send deny list for a resticted marker
+signer must have transfer authority
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | The denomination of the marker to update. |
+| `remove_denied_addresses` | [string](#string) | repeated | List of bech32 addresses to remove from the deny send list. |
+| `add_denied_addresses` | [string](#string) | repeated | List of bech32 addresses to add to the deny send list. |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
-### Process
-Process contains information used to uniquely identify what was used to generate this record
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | the address of a smart contract used for this process |
-| `hash` | [string](#string) | | the hash of an off-chain process used |
-| `name` | [string](#string) | | a name associated with the process (type_name, classname or smart contract common name) |
-| `method` | [string](#string) | | method is a name or reference to a specific operation (method) within a class/contract that was invoked |
+### MsgUpdateSendDenyListResponse
+MsgUpdateSendDenyListResponse defines the Msg/UpdateSendDenyList response type
-
+
-### Record
-A record (of fact) is attached to a session or each consideration output from a contract
+### MsgWithdrawEscrowProposalRequest
+MsgWithdrawEscrowProposalRequest defines the Msg/WithdrawEscrowProposal request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | name/identifier for this record. Value must be unique within the scope. Also known as a Fact name |
-| `session_id` | [bytes](#bytes) | | id of the session context that was used to create this record (use with filtered kvprefix iterator) |
-| `process` | [Process](#provenance.metadata.v1.Process) | | process contain information used to uniquely identify an execution on or off chain that generated this record |
-| `inputs` | [RecordInput](#provenance.metadata.v1.RecordInput) | repeated | inputs used with the process to achieve the output on this record |
-| `outputs` | [RecordOutput](#provenance.metadata.v1.RecordOutput) | repeated | output(s) is the results of executing the process on the given process indicated in this record |
-| `specification_id` | [bytes](#bytes) | | specification_id is the id of the record specification that was used to create this record. |
-
-
+| `denom` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
+| `target_address` | [string](#string) | | |
+| `authority` | [string](#string) | | The signer of the message. Must have admin authority to marker or be governance module account address. |
-
-### RecordInput
-Tracks the inputs used to establish this record
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | Name value included to link back to the definition spec. |
-| `record_id` | [bytes](#bytes) | | the address of a record on chain (For Established Records) |
-| `hash` | [string](#string) | | the hash of an off-chain piece of information (For Proposed Records) |
-| `type_name` | [string](#string) | | from proposed fact structure to unmarshal |
-| `status` | [RecordInputStatus](#provenance.metadata.v1.RecordInputStatus) | | Indicates if this input was a recorded fact on chain or just a given hashed input |
+### MsgWithdrawEscrowProposalResponse
+MsgWithdrawEscrowProposalResponse defines the Msg/WithdrawEscrowProposal response type
-
+
-### RecordOutput
-RecordOutput encapsulates the output of a process recorded on chain
+### MsgWithdrawRequest
+MsgWithdrawRequest defines the Msg/Withdraw request type
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `hash` | [string](#string) | | Hash of the data output that was output/generated for this record |
-| `status` | [ResultStatus](#provenance.metadata.v1.ResultStatus) | | Status of the process execution associated with this output indicating success,failure, or pending |
-
-
-
-
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `to_address` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
-
-### Scope
-Scope defines a root reference for a collection of records owned by one or more parties.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_id` | [bytes](#bytes) | | Unique ID for this scope. Implements sdk.Address interface for use where addresses are required in Cosmos |
-| `specification_id` | [bytes](#bytes) | | the scope specification that contains the specifications for data elements allowed within this scope |
-| `owners` | [Party](#provenance.metadata.v1.Party) | repeated | These parties represent top level owners of the records within. These parties must sign any requests that modify the data within the scope. These addresses are in union with parties listed on the sessions. |
-| `data_access` | [string](#string) | repeated | Addresses in this list are authorized to receive off-chain data associated with this scope. |
-| `value_owner_address` | [string](#string) | | An address that controls the value associated with this scope. Standard blockchain accounts and marker accounts are supported for this value. This attribute may only be changed by the entity indicated once it is set. |
-| `require_party_rollup` | [bool](#bool) | | Whether all parties in this scope and its sessions must be present in this scope's owners field. This also enables use of optional=true scope owners and session parties. |
+
+### MsgWithdrawResponse
+MsgWithdrawResponse defines the Msg/Withdraw response type
-
-### Session
-Session defines an execution context against a specific specification instance.
-The context will have a specification and set of parties involved.
+
-NOTE: When there are no more Records within a Scope that reference a Session, the Session is removed.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `session_id` | [bytes](#bytes) | | |
-| `specification_id` | [bytes](#bytes) | | unique id of the contract specification that was used to create this session. |
-| `parties` | [Party](#provenance.metadata.v1.Party) | repeated | parties is the set of identities that signed this contract |
-| `name` | [string](#string) | | name to associate with this session execution context, typically classname |
-| `context` | [bytes](#bytes) | | context is a field for storing client specific data associated with a session. |
-| `audit` | [AuditFields](#provenance.metadata.v1.AuditFields) | | Created by, updated by, timestamps, version number, and related info. |
+
+### Msg
+Msg defines the Marker Msg service.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Finalize` | [MsgFinalizeRequest](#provenance-marker-v1-MsgFinalizeRequest) | [MsgFinalizeResponse](#provenance-marker-v1-MsgFinalizeResponse) | Finalize |
+| `Activate` | [MsgActivateRequest](#provenance-marker-v1-MsgActivateRequest) | [MsgActivateResponse](#provenance-marker-v1-MsgActivateResponse) | Activate |
+| `Cancel` | [MsgCancelRequest](#provenance-marker-v1-MsgCancelRequest) | [MsgCancelResponse](#provenance-marker-v1-MsgCancelResponse) | Cancel |
+| `Delete` | [MsgDeleteRequest](#provenance-marker-v1-MsgDeleteRequest) | [MsgDeleteResponse](#provenance-marker-v1-MsgDeleteResponse) | Delete |
+| `Mint` | [MsgMintRequest](#provenance-marker-v1-MsgMintRequest) | [MsgMintResponse](#provenance-marker-v1-MsgMintResponse) | Mint |
+| `Burn` | [MsgBurnRequest](#provenance-marker-v1-MsgBurnRequest) | [MsgBurnResponse](#provenance-marker-v1-MsgBurnResponse) | Burn |
+| `AddAccess` | [MsgAddAccessRequest](#provenance-marker-v1-MsgAddAccessRequest) | [MsgAddAccessResponse](#provenance-marker-v1-MsgAddAccessResponse) | AddAccess |
+| `DeleteAccess` | [MsgDeleteAccessRequest](#provenance-marker-v1-MsgDeleteAccessRequest) | [MsgDeleteAccessResponse](#provenance-marker-v1-MsgDeleteAccessResponse) | DeleteAccess |
+| `Withdraw` | [MsgWithdrawRequest](#provenance-marker-v1-MsgWithdrawRequest) | [MsgWithdrawResponse](#provenance-marker-v1-MsgWithdrawResponse) | Withdraw |
+| `AddMarker` | [MsgAddMarkerRequest](#provenance-marker-v1-MsgAddMarkerRequest) | [MsgAddMarkerResponse](#provenance-marker-v1-MsgAddMarkerResponse) | AddMarker |
+| `Transfer` | [MsgTransferRequest](#provenance-marker-v1-MsgTransferRequest) | [MsgTransferResponse](#provenance-marker-v1-MsgTransferResponse) | Transfer marker denominated coin between accounts |
+| `IbcTransfer` | [MsgIbcTransferRequest](#provenance-marker-v1-MsgIbcTransferRequest) | [MsgIbcTransferResponse](#provenance-marker-v1-MsgIbcTransferResponse) | Transfer over ibc any marker(including restricted markers) between ibc accounts. The relayer is still needed to accomplish ibc middleware relays. |
+| `SetDenomMetadata` | [MsgSetDenomMetadataRequest](#provenance-marker-v1-MsgSetDenomMetadataRequest) | [MsgSetDenomMetadataResponse](#provenance-marker-v1-MsgSetDenomMetadataResponse) | Allows Denom Metadata (see bank module) to be set for the Marker's Denom |
+| `GrantAllowance` | [MsgGrantAllowanceRequest](#provenance-marker-v1-MsgGrantAllowanceRequest) | [MsgGrantAllowanceResponse](#provenance-marker-v1-MsgGrantAllowanceResponse) | GrantAllowance grants fee allowance to the grantee on the granter's account with the provided expiration time. |
+| `AddFinalizeActivateMarker` | [MsgAddFinalizeActivateMarkerRequest](#provenance-marker-v1-MsgAddFinalizeActivateMarkerRequest) | [MsgAddFinalizeActivateMarkerResponse](#provenance-marker-v1-MsgAddFinalizeActivateMarkerResponse) | AddFinalizeActivateMarker |
+| `SupplyIncreaseProposal` | [MsgSupplyIncreaseProposalRequest](#provenance-marker-v1-MsgSupplyIncreaseProposalRequest) | [MsgSupplyIncreaseProposalResponse](#provenance-marker-v1-MsgSupplyIncreaseProposalResponse) | SupplyIncreaseProposal can only be called via gov proposal |
+| `SupplyDecreaseProposal` | [MsgSupplyDecreaseProposalRequest](#provenance-marker-v1-MsgSupplyDecreaseProposalRequest) | [MsgSupplyDecreaseProposalResponse](#provenance-marker-v1-MsgSupplyDecreaseProposalResponse) | SupplyDecreaseProposal can only be called via gov proposal |
+| `UpdateRequiredAttributes` | [MsgUpdateRequiredAttributesRequest](#provenance-marker-v1-MsgUpdateRequiredAttributesRequest) | [MsgUpdateRequiredAttributesResponse](#provenance-marker-v1-MsgUpdateRequiredAttributesResponse) | UpdateRequiredAttributes will only succeed if signer has transfer authority |
+| `UpdateForcedTransfer` | [MsgUpdateForcedTransferRequest](#provenance-marker-v1-MsgUpdateForcedTransferRequest) | [MsgUpdateForcedTransferResponse](#provenance-marker-v1-MsgUpdateForcedTransferResponse) | UpdateForcedTransfer updates the allow_forced_transfer field of a marker via governance proposal. |
+| `SetAccountData` | [MsgSetAccountDataRequest](#provenance-marker-v1-MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance-marker-v1-MsgSetAccountDataResponse) | SetAccountData sets the accountdata for a denom. Signer must have deposit authority. |
+| `UpdateSendDenyList` | [MsgUpdateSendDenyListRequest](#provenance-marker-v1-MsgUpdateSendDenyListRequest) | [MsgUpdateSendDenyListResponse](#provenance-marker-v1-MsgUpdateSendDenyListResponse) | UpdateSendDenyList will only succeed if signer has admin authority |
+| `AddNetAssetValues` | [MsgAddNetAssetValuesRequest](#provenance-marker-v1-MsgAddNetAssetValuesRequest) | [MsgAddNetAssetValuesResponse](#provenance-marker-v1-MsgAddNetAssetValuesResponse) | AddNetAssetValues set the net asset value for a marker |
+| `SetAdministratorProposal` | [MsgSetAdministratorProposalRequest](#provenance-marker-v1-MsgSetAdministratorProposalRequest) | [MsgSetAdministratorProposalResponse](#provenance-marker-v1-MsgSetAdministratorProposalResponse) | SetAdministratorProposal sets administrators with specific access on the marker |
+| `RemoveAdministratorProposal` | [MsgRemoveAdministratorProposalRequest](#provenance-marker-v1-MsgRemoveAdministratorProposalRequest) | [MsgRemoveAdministratorProposalResponse](#provenance-marker-v1-MsgRemoveAdministratorProposalResponse) | RemoveAdministratorProposal removes administrators with specific access on the marker |
+| `ChangeStatusProposal` | [MsgChangeStatusProposalRequest](#provenance-marker-v1-MsgChangeStatusProposalRequest) | [MsgChangeStatusProposalResponse](#provenance-marker-v1-MsgChangeStatusProposalResponse) | ChangeStatusProposal is a governance proposal change marker status |
+| `WithdrawEscrowProposal` | [MsgWithdrawEscrowProposalRequest](#provenance-marker-v1-MsgWithdrawEscrowProposalRequest) | [MsgWithdrawEscrowProposalResponse](#provenance-marker-v1-MsgWithdrawEscrowProposalResponse) | WithdrawEscrowProposal is a governance proposal to withdraw escrow coins from a marker |
+| `SetDenomMetadataProposal` | [MsgSetDenomMetadataProposalRequest](#provenance-marker-v1-MsgSetDenomMetadataProposalRequest) | [MsgSetDenomMetadataProposalResponse](#provenance-marker-v1-MsgSetDenomMetadataProposalResponse) | SetDenomMetadataProposal is a governance proposal to set marker metadata |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-marker-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-marker-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the marker module's params. |
+
-
-
+
+Top
-### RecordInputStatus
-A set of types for inputs on a record (of fact)
+## provenance/marker/v1/si.proto
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| RECORD_INPUT_STATUS_UNSPECIFIED | 0 | RECORD_INPUT_STATUS_UNSPECIFIED indicates an invalid/unknown input type |
-| RECORD_INPUT_STATUS_PROPOSED | 1 | RECORD_INPUT_STATUS_PROPOSED indicates this input was an arbitrary piece of data that was hashed |
-| RECORD_INPUT_STATUS_RECORD | 2 | RECORD_INPUT_STATUS_RECORD indicates this input is a reference to a previously recorded fact on blockchain |
+
-
+
-### ResultStatus
-ResultStatus indicates the various states of execution of a record
+### SIPrefix
+SIPrefix represents an International System of Units (SI) Prefix.
| Name | Number | Description |
| ---- | ------ | ----------- |
-| RESULT_STATUS_UNSPECIFIED | 0 | RESULT_STATUS_UNSPECIFIED indicates an unset condition |
-| RESULT_STATUS_PASS | 1 | RESULT_STATUS_PASS indicates the execution was successful |
-| RESULT_STATUS_SKIP | 2 | RESULT_STATUS_SKIP indicates condition/consideration was skipped due to missing inputs or delayed execution |
-| RESULT_STATUS_FAIL | 3 | RESULT_STATUS_FAIL indicates the execution of the condition/consideration failed. |
+| `SI_PREFIX_NONE` | `0` | 10^0 (none) |
+| `SI_PREFIX_DEKA` | `1` | 10^1 deka da |
+| `SI_PREFIX_HECTO` | `2` | 10^2 hecto h |
+| `SI_PREFIX_KILO` | `3` | 10^3 kilo k |
+| `SI_PREFIX_MEGA` | `6` | 10^6 mega M |
+| `SI_PREFIX_GIGA` | `9` | 10^9 giga G |
+| `SI_PREFIX_TERA` | `12` | 10^12 tera T |
+| `SI_PREFIX_PETA` | `15` | 10^15 peta P |
+| `SI_PREFIX_EXA` | `18` | 10^18 exa E |
+| `SI_PREFIX_ZETTA` | `21` | 10^21 zetta Z |
+| `SI_PREFIX_YOTTA` | `24` | 10^24 yotta Y |
+| `SI_PREFIX_DECI` | `-1` | 10^-1 deci d |
+| `SI_PREFIX_CENTI` | `-2` | 10^-2 centi c |
+| `SI_PREFIX_MILLI` | `-3` | 10^-3 milli m |
+| `SI_PREFIX_MICRO` | `-6` | 10^-6 micro µ |
+| `SI_PREFIX_NANO` | `-9` | 10^-9 nano n |
+| `SI_PREFIX_PICO` | `-12` | 10^-12 pico p |
+| `SI_PREFIX_FEMTO` | `-15` | 10^-15 femto f |
+| `SI_PREFIX_ATTO` | `-18` | 10^-18 atto a |
+| `SI_PREFIX_ZEPTO` | `-21` | 10^-21 zepto z |
+| `SI_PREFIX_YOCTO` | `-24` | 10^-24 yocto y |
@@ -7183,1482 +7704,1478 @@ ResultStatus indicates the various states of execution of a record
-
+
Top
-## provenance/metadata/v1/objectstore.proto
+## provenance/marker/v1/marker.proto
-
+
-### OSLocatorParams
-Params defines the parameters for the metadata-locator module methods.
+### EventDenomUnit
+EventDenomUnit denom units for set denom metadata event
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `max_uri_length` | [uint32](#uint32) | | |
+| `denom` | [string](#string) | | |
+| `exponent` | [string](#string) | | |
+| `aliases` | [string](#string) | repeated | |
-
+
-### ObjectStoreLocator
-Defines an Locator object stored on chain, which represents a owner( blockchain address) associated with a endpoint
-uri for it's associated object store.
+### EventMarkerAccess
+EventMarkerAccess event access permissions for address
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `owner` | [string](#string) | | account address the endpoint is owned by |
-| `locator_uri` | [string](#string) | | locator endpoint uri |
-| `encryption_key` | [string](#string) | | owners encryption key address |
+| `address` | [string](#string) | | |
+| `permissions` | [string](#string) | repeated | |
-
-
+
-
+### EventMarkerActivate
+EventMarkerActivate event emitted when marker is activated
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-Top
-## provenance/metadata/v1/genesis.proto
-
+
-### GenesisState
-GenesisState defines the account module's genesis state.
+### EventMarkerAdd
+EventMarkerAdd event emitted when marker is added
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.metadata.v1.Params) | | params defines all the parameters of the module. |
-| `scopes` | [Scope](#provenance.metadata.v1.Scope) | repeated | A collection of metadata scopes and specs to create on start |
-| `sessions` | [Session](#provenance.metadata.v1.Session) | repeated | |
-| `records` | [Record](#provenance.metadata.v1.Record) | repeated | |
-| `scope_specifications` | [ScopeSpecification](#provenance.metadata.v1.ScopeSpecification) | repeated | |
-| `contract_specifications` | [ContractSpecification](#provenance.metadata.v1.ContractSpecification) | repeated | |
-| `record_specifications` | [RecordSpecification](#provenance.metadata.v1.RecordSpecification) | repeated | |
-| `o_s_locator_params` | [OSLocatorParams](#provenance.metadata.v1.OSLocatorParams) | | |
-| `object_store_locators` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | repeated | |
-| `net_asset_values` | [MarkerNetAssetValues](#provenance.metadata.v1.MarkerNetAssetValues) | repeated | Net asset values assigned to scopes |
+| `denom` | [string](#string) | | |
+| `amount` | [string](#string) | | |
+| `status` | [string](#string) | | |
+| `manager` | [string](#string) | | |
+| `marker_type` | [string](#string) | | |
+| `address` | [string](#string) | | |
-
+
-### MarkerNetAssetValues
-MarkerNetAssetValues defines the net asset values for a scope
+### EventMarkerAddAccess
+EventMarkerAddAccess event emitted when marker access is added
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address defines the scope address |
-| `net_asset_values` | [NetAssetValue](#provenance.metadata.v1.NetAssetValue) | repeated | net_asset_values that are assigned to scope |
+| `access` | [EventMarkerAccess](#provenance-marker-v1-EventMarkerAccess) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-
+
-
+### EventMarkerBurn
+EventMarkerBurn event emitted when coin is burned from marker
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `amount` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
-Top
-## provenance/metadata/v1/p8e/p8e.proto
-
+
-### Condition
-Deprecated: Do not use.
+### EventMarkerCancel
+EventMarkerCancel event emitted when marker is cancelled
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `condition_name` | [string](#string) | | |
-| `result` | [ExecutionResult](#provenance.metadata.v1.p8e.ExecutionResult) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### ConditionSpec
-Deprecated: Do not use.
+### EventMarkerDelete
+EventMarkerDelete event emitted when marker is deleted
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `func_name` | [string](#string) | | |
-| `input_specs` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | repeated | |
-| `output_spec` | [OutputSpec](#provenance.metadata.v1.p8e.OutputSpec) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### Consideration
-Deprecated: Do not use.
+### EventMarkerDeleteAccess
+EventMarkerDeleteAccess event emitted when marker access is revoked
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `consideration_name` | [string](#string) | | |
-| `inputs` | [ProposedFact](#provenance.metadata.v1.p8e.ProposedFact) | repeated | |
-| `result` | [ExecutionResult](#provenance.metadata.v1.p8e.ExecutionResult) | | |
+| `remove_address` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### ConsiderationSpec
-Deprecated: Do not use.
+### EventMarkerFinalize
+EventMarkerFinalize event emitted when marker is finalized
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `func_name` | [string](#string) | | |
-| `responsible_party` | [PartyType](#provenance.metadata.v1.p8e.PartyType) | | |
-| `input_specs` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | repeated | |
-| `output_spec` | [OutputSpec](#provenance.metadata.v1.p8e.OutputSpec) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### Contract
-Deprecated: Do not use.
+### EventMarkerMint
+EventMarkerMint event emitted when additional marker supply is minted
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `definition` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | | |
-| `spec` | [Fact](#provenance.metadata.v1.p8e.Fact) | | |
-| `invoker` | [SigningAndEncryptionPublicKeys](#provenance.metadata.v1.p8e.SigningAndEncryptionPublicKeys) | | |
-| `inputs` | [Fact](#provenance.metadata.v1.p8e.Fact) | repeated | |
-| `conditions` | [Condition](#provenance.metadata.v1.p8e.Condition) | repeated | **Deprecated.** |
-| `considerations` | [Consideration](#provenance.metadata.v1.p8e.Consideration) | repeated | |
-| `recitals` | [Recital](#provenance.metadata.v1.p8e.Recital) | repeated | |
-| `times_executed` | [int32](#int32) | | |
-| `start_time` | [Timestamp](#provenance.metadata.v1.p8e.Timestamp) | | |
-| `context` | [bytes](#bytes) | | |
+| `amount` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
-
+
-### ContractSpec
-Deprecated: Do not use.
+### EventMarkerParamsUpdated
+EventMarkerParamsUpdated event emitted when marker params are updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `definition` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | | |
-| `input_specs` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | repeated | |
-| `parties_involved` | [PartyType](#provenance.metadata.v1.p8e.PartyType) | repeated | |
-| `condition_specs` | [ConditionSpec](#provenance.metadata.v1.p8e.ConditionSpec) | repeated | |
-| `consideration_specs` | [ConsiderationSpec](#provenance.metadata.v1.p8e.ConsiderationSpec) | repeated | |
+| `enable_governance` | [string](#string) | | |
+| `unrestricted_denom_regex` | [string](#string) | | |
+| `max_supply` | [string](#string) | | |
-
+
-### DefinitionSpec
-Deprecated: Do not use.
+### EventMarkerSetDenomMetadata
+EventMarkerSetDenomMetadata event emitted when metadata is set on marker with denom
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `resource_location` | [Location](#provenance.metadata.v1.p8e.Location) | | |
-| `signature` | [Signature](#provenance.metadata.v1.p8e.Signature) | | |
-| `type` | [DefinitionSpecType](#provenance.metadata.v1.p8e.DefinitionSpecType) | | |
+| `metadata_base` | [string](#string) | | |
+| `metadata_description` | [string](#string) | | |
+| `metadata_display` | [string](#string) | | |
+| `metadata_denom_units` | [EventDenomUnit](#provenance-marker-v1-EventDenomUnit) | repeated | |
+| `administrator` | [string](#string) | | |
+| `metadata_name` | [string](#string) | | |
+| `metadata_symbol` | [string](#string) | | |
-
+
-### ExecutionResult
-Deprecated: Do not use.
+### EventMarkerTransfer
+EventMarkerTransfer event emitted when coins are transfered to from account to another
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `output` | [ProposedFact](#provenance.metadata.v1.p8e.ProposedFact) | | |
-| `result` | [ExecutionResultType](#provenance.metadata.v1.p8e.ExecutionResultType) | | |
-| `recorded_at` | [Timestamp](#provenance.metadata.v1.p8e.Timestamp) | | |
-| `error_message` | [string](#string) | | |
+| `amount` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `to_address` | [string](#string) | | |
+| `from_address` | [string](#string) | | |
-
+
-### Fact
-Deprecated: Do not use.
+### EventMarkerWithdraw
+EventMarkerWithdraw event emitted when coins are withdrew from marker
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `data_location` | [Location](#provenance.metadata.v1.p8e.Location) | | |
+| `coins` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `administrator` | [string](#string) | | |
+| `to_address` | [string](#string) | | |
-
+
-### Location
-Deprecated: Do not use.
+### EventSetNetAssetValue
+EventSetNetAssetValue event emitted when Net Asset Value for marker is update or added
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `ref` | [ProvenanceReference](#provenance.metadata.v1.p8e.ProvenanceReference) | | |
-| `classname` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `price` | [string](#string) | | |
+| `volume` | [string](#string) | | |
+| `source` | [string](#string) | | |
-
+
-### OutputSpec
-Deprecated: Do not use.
+### MarkerAccount
+MarkerAccount holds the marker configuration information in addition to a base account structure.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `spec` | [DefinitionSpec](#provenance.metadata.v1.p8e.DefinitionSpec) | | |
+| `base_account` | [cosmos.auth.v1beta1.BaseAccount](#cosmos-auth-v1beta1-BaseAccount) | | base cosmos account information including address and coin holdings. |
+| `manager` | [string](#string) | | Address that owns the marker configuration. This account must sign any requests to change marker config (only valid for statuses prior to finalization) |
+| `access_control` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | Access control lists |
+| `status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | Indicates the current status of this marker record. |
+| `denom` | [string](#string) | | value denomination and total supply for the token. |
+| `supply` | [string](#string) | | the total supply expected for a marker. This is the amount that is minted when a marker is created. |
+| `marker_type` | [MarkerType](#provenance-marker-v1-MarkerType) | | Marker type information |
+| `supply_fixed` | [bool](#bool) | | A fixed supply will mint additional coin automatically if the total supply decreases below a set value. This may occur if the coin is burned or an account holding the coin is slashed. (default: true) |
+| `allow_governance_control` | [bool](#bool) | | indicates that governance based control is allowed for this marker |
+| `allow_forced_transfer` | [bool](#bool) | | Whether an admin can transfer restricted coins from a 3rd-party account without their signature. |
+| `required_attributes` | [string](#string) | repeated | list of required attributes on restricted marker in order to send and receive transfers if sender does not have transfer authority |
-
+
-### ProposedFact
-Deprecated: Do not use.
+### NetAssetValue
+NetAssetValue defines a marker's net asset value
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | |
-| `hash` | [string](#string) | | |
-| `classname` | [string](#string) | | |
-| `ancestor` | [ProvenanceReference](#provenance.metadata.v1.p8e.ProvenanceReference) | | |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is the complete value of the asset's volume |
+| `volume` | [uint64](#uint64) | | volume is the number of tokens of the marker that were purchased for the price |
+| `updated_block_height` | [uint64](#uint64) | | updated_block_height is the block height of last update |
-
+
-### ProvenanceReference
-Deprecated: Do not use.
+### Params
+Params defines the set of params for the account module.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_uuid` | [UUID](#provenance.metadata.v1.p8e.UUID) | | |
-| `group_uuid` | [UUID](#provenance.metadata.v1.p8e.UUID) | | |
-| `hash` | [string](#string) | | |
-| `name` | [string](#string) | | |
+| `max_total_supply` | [uint64](#uint64) | | **Deprecated.** Deprecated: Prefer to use `max_supply` instead. Maximum amount of supply to allow a marker to be created with |
+| `enable_governance` | [bool](#bool) | | indicates if governance based controls of markers is allowed. |
+| `unrestricted_denom_regex` | [string](#string) | | a regular expression used to validate marker denom values from normal create requests (governance requests are only subject to platform coin validation denom expression) |
+| `max_supply` | [string](#string) | | maximum amount of supply to allow a marker to be created with |
+
+
-
+
-### PublicKey
-Deprecated: Do not use.
+### MarkerStatus
+MarkerStatus defines the various states a marker account can be in.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `MARKER_STATUS_UNSPECIFIED` | `0` | MARKER_STATUS_UNSPECIFIED - Unknown/Invalid Marker Status |
+| `MARKER_STATUS_PROPOSED` | `1` | MARKER_STATUS_PROPOSED - Initial configuration period, updates allowed, token supply not created. |
+| `MARKER_STATUS_FINALIZED` | `2` | MARKER_STATUS_FINALIZED - Configuration finalized, ready for supply creation |
+| `MARKER_STATUS_ACTIVE` | `3` | MARKER_STATUS_ACTIVE - Supply is created, rules are in force. |
+| `MARKER_STATUS_CANCELLED` | `4` | MARKER_STATUS_CANCELLED - Marker has been cancelled, pending destroy |
+| `MARKER_STATUS_DESTROYED` | `5` | MARKER_STATUS_DESTROYED - Marker supply has all been recalled, marker is considered destroyed and no further actions allowed. |
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `public_key_bytes` | [bytes](#bytes) | | |
-| `type` | [PublicKeyType](#provenance.metadata.v1.p8e.PublicKeyType) | | |
-| `curve` | [PublicKeyCurve](#provenance.metadata.v1.p8e.PublicKeyCurve) | | |
+
+### MarkerType
+MarkerType defines the types of marker
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `MARKER_TYPE_UNSPECIFIED` | `0` | MARKER_TYPE_UNSPECIFIED is an invalid/unknown marker type. |
+| `MARKER_TYPE_COIN` | `1` | MARKER_TYPE_COIN is a marker that represents a standard fungible coin (default). |
+| `MARKER_TYPE_RESTRICTED` | `2` | MARKER_TYPE_RESTRICTED is a marker that represents a denom with send_enabled = false. |
-
+
-### Recital
-Deprecated: Do not use.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `signer_role` | [PartyType](#provenance.metadata.v1.p8e.PartyType) | | |
-| `signer` | [SigningAndEncryptionPublicKeys](#provenance.metadata.v1.p8e.SigningAndEncryptionPublicKeys) | | |
-| `address` | [bytes](#bytes) | | |
+
+Top
+## provenance/marker/v1/query.proto
-
+
-### Recitals
-Deprecated: Do not use.
+### Balance
+Balance defines an account address and balance pair used in queries for accounts holding a marker
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `parties` | [Recital](#provenance.metadata.v1.p8e.Recital) | repeated | |
+| `address` | [string](#string) | | address is the address of the balance holder. |
+| `coins` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | coins defines the different coins this balance holds. |
-
+
-### Signature
-Deprecated: Do not use.
+### QueryAccessRequest
+QueryAccessRequest is the request type for the Query/MarkerAccess method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `algo` | [string](#string) | | |
-| `provider` | [string](#string) | | |
-| `signature` | [string](#string) | | |
-| `signer` | [SigningAndEncryptionPublicKeys](#provenance.metadata.v1.p8e.SigningAndEncryptionPublicKeys) | | |
+| `id` | [string](#string) | | address or denom for the marker |
-
+
-### SignatureSet
-Deprecated: Do not use.
+### QueryAccessResponse
+QueryAccessResponse is the response type for the Query/MarkerAccess method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `signatures` | [Signature](#provenance.metadata.v1.p8e.Signature) | repeated | |
+| `accounts` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
-
+
-### SigningAndEncryptionPublicKeys
-Deprecated: Do not use.
+### QueryAccountDataRequest
+QueryAccountDataRequest is the request type for the Query/AccountData
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `signing_public_key` | [PublicKey](#provenance.metadata.v1.p8e.PublicKey) | | |
-| `encryption_public_key` | [PublicKey](#provenance.metadata.v1.p8e.PublicKey) | | |
+| `denom` | [string](#string) | | The denomination to look up. |
-
+
-### Timestamp
-Deprecated: Do not use.
+### QueryAccountDataResponse
+QueryAccountDataResponse is the response type for the Query/AccountData
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `seconds` | [int64](#int64) | | |
-| `nanos` | [int32](#int32) | | |
+| `value` | [string](#string) | | The accountdata for the requested denom. |
-
+
-### UUID
-Deprecated: Do not use.
+### QueryAllMarkersRequest
+QueryAllMarkersRequest is the request type for the Query/AllMarkers method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `value` | [string](#string) | | |
+| `status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | Optional status to filter request |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
+
+
+
-
+### QueryAllMarkersResponse
+QueryAllMarkersResponse is the response type for the Query/AllMarkers method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `markers` | [google.protobuf.Any](#google-protobuf-Any) | repeated | |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-### DefinitionSpecType
-Deprecated: Do not use.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| DEFINITION_SPEC_TYPE_UNKNOWN | 0 | Deprecated: Do not use. |
-| DEFINITION_SPEC_TYPE_PROPOSED | 1 | Deprecated: Do not use. |
-| DEFINITION_SPEC_TYPE_FACT | 2 | Deprecated: Do not use. |
-| DEFINITION_SPEC_TYPE_FACT_LIST | 3 | Deprecated: Do not use. |
-
-### ExecutionResultType
-Deprecated: Do not use.
+
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| RESULT_TYPE_UNKNOWN | 0 | Deprecated: Do not use. |
-| RESULT_TYPE_PASS | 1 | Deprecated: Do not use. |
-| RESULT_TYPE_SKIP | 2 | Deprecated: Do not use. |
-| RESULT_TYPE_FAIL | 3 | Deprecated: Do not use. |
+### QueryDenomMetadataRequest
+QueryDenomMetadataRequest is the request type for Query/DenomMetadata
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `denom` | [string](#string) | | |
-
-### PartyType
-Deprecated: Do not use.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| PARTY_TYPE_UNKNOWN | 0 | Deprecated: Do not use. |
-| PARTY_TYPE_ORIGINATOR | 1 | Deprecated: Do not use. |
-| PARTY_TYPE_SERVICER | 2 | Deprecated: Do not use. |
-| PARTY_TYPE_INVESTOR | 3 | Deprecated: Do not use. |
-| PARTY_TYPE_CUSTODIAN | 4 | Deprecated: Do not use. |
-| PARTY_TYPE_OWNER | 5 | Deprecated: Do not use. |
-| PARTY_TYPE_AFFILIATE | 6 | Deprecated: Do not use. |
-| PARTY_TYPE_OMNIBUS | 7 | Deprecated: Do not use. |
-| PARTY_TYPE_PROVENANCE | 8 | Deprecated: Do not use. |
-| PARTY_TYPE_MARKER | 9 | Deprecated: Do not use. |
-| PARTY_TYPE_CONTROLLER | 10 | Deprecated: Do not use. |
-| PARTY_TYPE_VALIDATOR | 11 | Deprecated: Do not use. |
-
+
-### PublicKeyCurve
-Deprecated: Do not use.
+### QueryDenomMetadataResponse
+QueryDenomMetadataResponse is the response type for the Query/DenomMetadata
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| SECP256K1 | 0 | Deprecated: Do not use. |
-| P256 | 1 | Deprecated: Do not use. |
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos-bank-v1beta1-Metadata) | | |
-
-### PublicKeyType
-Deprecated: Do not use.
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| ELLIPTIC | 0 | Deprecated: Do not use. |
-
+
-
+### QueryEscrowRequest
+QueryEscrowRequest is the request type for the Query/MarkerEscrow method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `id` | [string](#string) | | address or denom for the marker |
-
-Top
-## provenance/metadata/v1/query.proto
-
+
-### AccountDataRequest
-AccountDataRequest is the request type for the Query/AccountData RPC method.
+### QueryEscrowResponse
+QueryEscrowResponse is the response type for the Query/MarkerEscrow method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `metadata_addr` | [bytes](#bytes) | | The metadata address to look up. Currently, only scope ids are supported. |
+| `escrow` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
-
+
-### AccountDataResponse
-AccountDataResponse is the response type for the Query/AccountData RPC method.
+### QueryHoldingRequest
+QueryHoldingRequest is the request type for the Query/MarkerHolders method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `value` | [string](#string) | | The accountdata for the requested metadata address. |
+| `id` | [string](#string) | | the address or denom of the marker |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### ContractSpecificationRequest
-ContractSpecificationRequest is the request type for the Query/ContractSpecification RPC method.
+### QueryHoldingResponse
+QueryHoldingResponse is the response type for the Query/MarkerHolders method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
-| `include_record_specs` | [bool](#bool) | | include_record_specs is a flag for whether to include the the record specifications of this contract specification in the response. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `balances` | [Balance](#provenance-marker-v1-Balance) | repeated | |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
+
-### ContractSpecificationResponse
-ContractSpecificationResponse is the response type for the Query/ContractSpecification RPC method.
+### QueryMarkerRequest
+QueryMarkerRequest is the request type for the Query/Marker method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_specification` | [ContractSpecificationWrapper](#provenance.metadata.v1.ContractSpecificationWrapper) | | contract_specification is the wrapped contract specification. |
-| `record_specifications` | [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper) | repeated | record_specifications is any number or wrapped record specifications associated with this contract_specification (if requested). |
-| `request` | [ContractSpecificationRequest](#provenance.metadata.v1.ContractSpecificationRequest) | | request is a copy of the request that generated these results. |
+| `id` | [string](#string) | | the address or denom of the marker |
-
+
-### ContractSpecificationWrapper
-ContractSpecificationWrapper contains a single contract specification and some extra identifiers for it.
+### QueryMarkerResponse
+QueryMarkerResponse is the response type for the Query/Marker method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [ContractSpecification](#provenance.metadata.v1.ContractSpecification) | | specification is the on-chain contract specification message. |
-| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification. |
+| `marker` | [google.protobuf.Any](#google-protobuf-Any) | | |
-
+
-### ContractSpecificationsAllRequest
-ContractSpecificationsAllRequest is the request type for the Query/ContractSpecificationsAll RPC method.
+### QueryNetAssetValuesRequest
+QueryNetAssetValuesRequest is the request type for the Query/NetAssetValues method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `id` | [string](#string) | | address or denom for the marker |
-
+
-### ContractSpecificationsAllResponse
-ContractSpecificationsAllResponse is the response type for the Query/ContractSpecificationsAll RPC method.
+### QueryNetAssetValuesResponse
+QueryNetAssetValuesRequest is the response type for the Query/NetAssetValues method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_specifications` | [ContractSpecificationWrapper](#provenance.metadata.v1.ContractSpecificationWrapper) | repeated | contract_specifications are the wrapped contract specifications. |
-| `request` | [ContractSpecificationsAllRequest](#provenance.metadata.v1.ContractSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
-
+| `net_asset_values` | [NetAssetValue](#provenance-marker-v1-NetAssetValue) | repeated | net asset values for marker denom |
-
-### GetByAddrRequest
-GetByAddrRequest is the request type for the Query/GetByAddr RPC method.
+
-
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `addrs` | [string](#string) | repeated | ids are the metadata addresses of the things to look up. |
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
-
+
-### GetByAddrResponse
-GetByAddrResponse is the response type for the Query/GetByAddr RPC method.
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scopes` | [Scope](#provenance.metadata.v1.Scope) | repeated | scopes contains any scopes that were requested and found. |
-| `sessions` | [Session](#provenance.metadata.v1.Session) | repeated | sessions contains any sessions that were requested and found. |
-| `records` | [Record](#provenance.metadata.v1.Record) | repeated | records contains any records that were requested and found. |
-| `scope_specs` | [ScopeSpecification](#provenance.metadata.v1.ScopeSpecification) | repeated | scope_specs contains any scope specifications that were requested and found. |
-| `contract_specs` | [ContractSpecification](#provenance.metadata.v1.ContractSpecification) | repeated | contract_specs contains any contract specifications that were requested and found. |
-| `record_specs` | [RecordSpecification](#provenance.metadata.v1.RecordSpecification) | repeated | record_specs contains any record specifications that were requested and found. |
-| `not_found` | [string](#string) | repeated | not_found contains any addrs requested but not found. |
+| `params` | [Params](#provenance-marker-v1-Params) | | params defines the parameters of the module. |
-
+
-### OSAllLocatorsRequest
-OSAllLocatorsRequest is the request type for the Query/OSAllLocators RPC method.
+### QuerySupplyRequest
+QuerySupplyRequest is the request type for the Query/MarkerSupply method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `id` | [string](#string) | | address or denom for the marker |
-
+
-### OSAllLocatorsResponse
-OSAllLocatorsResponse is the response type for the Query/OSAllLocators RPC method.
+### QuerySupplyResponse
+QuerySupplyResponse is the response type for the Query/MarkerSupply method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locators` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | repeated | |
-| `request` | [OSAllLocatorsRequest](#provenance.metadata.v1.OSAllLocatorsRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | amount is the supply of the marker. |
+
-
+
-### OSLocatorParamsRequest
-OSLocatorParamsRequest is the request type for the Query/OSLocatorParams RPC method.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+
+### Query
+Query defines the gRPC querier service for marker module.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-marker-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-marker-v1-QueryParamsResponse) | Params queries the parameters of x/bank module. |
+| `AllMarkers` | [QueryAllMarkersRequest](#provenance-marker-v1-QueryAllMarkersRequest) | [QueryAllMarkersResponse](#provenance-marker-v1-QueryAllMarkersResponse) | Returns a list of all markers on the blockchain |
+| `Marker` | [QueryMarkerRequest](#provenance-marker-v1-QueryMarkerRequest) | [QueryMarkerResponse](#provenance-marker-v1-QueryMarkerResponse) | query for a single marker by denom or address |
+| `Holding` | [QueryHoldingRequest](#provenance-marker-v1-QueryHoldingRequest) | [QueryHoldingResponse](#provenance-marker-v1-QueryHoldingResponse) | query for all accounts holding the given marker coins |
+| `Supply` | [QuerySupplyRequest](#provenance-marker-v1-QuerySupplyRequest) | [QuerySupplyResponse](#provenance-marker-v1-QuerySupplyResponse) | query for supply of coin on a marker account |
+| `Escrow` | [QueryEscrowRequest](#provenance-marker-v1-QueryEscrowRequest) | [QueryEscrowResponse](#provenance-marker-v1-QueryEscrowResponse) | query for coins on a marker account |
+| `Access` | [QueryAccessRequest](#provenance-marker-v1-QueryAccessRequest) | [QueryAccessResponse](#provenance-marker-v1-QueryAccessResponse) | query for access records on an account |
+| `DenomMetadata` | [QueryDenomMetadataRequest](#provenance-marker-v1-QueryDenomMetadataRequest) | [QueryDenomMetadataResponse](#provenance-marker-v1-QueryDenomMetadataResponse) | query for access records on an account |
+| `AccountData` | [QueryAccountDataRequest](#provenance-marker-v1-QueryAccountDataRequest) | [QueryAccountDataResponse](#provenance-marker-v1-QueryAccountDataResponse) | query for account data associated with a denom |
+| `NetAssetValues` | [QueryNetAssetValuesRequest](#provenance-marker-v1-QueryNetAssetValuesRequest) | [QueryNetAssetValuesResponse](#provenance-marker-v1-QueryNetAssetValuesResponse) | NetAssetValues returns net asset values for marker |
+
-
+
+Top
-### OSLocatorParamsResponse
-OSLocatorParamsResponse is the response type for the Query/OSLocatorParams RPC method.
+## provenance/marker/v1/accessgrant.proto
+
+
+
+
+
+### AccessGrant
+AccessGrant associates a collection of permissions with an address for delegated marker account control.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [OSLocatorParams](#provenance.metadata.v1.OSLocatorParams) | | params defines the parameters of the module. |
-| `request` | [OSLocatorParamsRequest](#provenance.metadata.v1.OSLocatorParamsRequest) | | request is a copy of the request that generated these results. |
+| `address` | [string](#string) | | |
+| `permissions` | [Access](#provenance-marker-v1-Access) | repeated | |
+
-
-### OSLocatorRequest
-OSLocatorRequest is the request type for the Query/OSLocator RPC method.
+
+### Access
+Access defines the different types of permissions that a marker supports granting to an address.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `owner` | [string](#string) | | |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `ACCESS_UNSPECIFIED` | `0` | ACCESS_UNSPECIFIED defines a no-op vote option. |
+| `ACCESS_MINT` | `1` | ACCESS_MINT is the ability to increase the supply of a marker. |
+| `ACCESS_BURN` | `2` | ACCESS_BURN is the ability to decrease the supply of the marker using coin held by the marker. |
+| `ACCESS_DEPOSIT` | `3` | ACCESS_DEPOSIT is the ability to transfer funds from another account to this marker account or to set a reference to this marker in the metadata/scopes module. |
+| `ACCESS_WITHDRAW` | `4` | ACCESS_WITHDRAW is the ability to transfer funds from this marker account to another account or to remove a reference to this marker in the metadata/scopes module. |
+| `ACCESS_DELETE` | `5` | ACCESS_DELETE is the ability to move a proposed, finalized or active marker into the cancelled state. This access also allows cancelled markers to be marked for deletion. |
+| `ACCESS_ADMIN` | `6` | ACCESS_ADMIN is the ability to add access grants for accounts to the list of marker permissions. This access also gives the ability to update the marker's denom metadata. |
+| `ACCESS_TRANSFER` | `7` | ACCESS_TRANSFER is the ability to manage transfer settings and broker transfers of the marker. Accounts with this access can: - Update the marker's required attributes. - Update the send-deny list. - Use the transfer or bank send endpoints to move marker funds out of their own account. This access right is only supported on RESTRICTED markers. |
+| `ACCESS_FORCE_TRANSFER` | `8` | ACCESS_FORCE_TRANSFER is the ability to transfer restricted coins from a 3rd-party account without their signature. This access right is only supported on RESTRICTED markers and only has meaning when allow_forced_transfer is true. |
+
+
+
-
-### OSLocatorResponse
-OSLocatorResponse is the response type for the Query/OSLocator RPC method.
+
+Top
+
+## provenance/marker/v1/authz.proto
+
+
+
+
+
+### MarkerTransferAuthorization
+MarkerTransferAuthorization gives the grantee permissions to execute
+a marker transfer on behalf of the granter's account.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | |
-| `request` | [OSLocatorRequest](#provenance.metadata.v1.OSLocatorRequest) | | request is a copy of the request that generated these results. |
+| `transfer_limit` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | transfer_limit is the total amount the grantee can transfer |
+| `allow_list` | [string](#string) | repeated | allow_list specifies an optional list of addresses to whom the grantee can send restricted coins on behalf of the granter. If omitted, any recipient is allowed. |
+
-
+
-### OSLocatorsByScopeRequest
-OSLocatorsByScopeRequest is the request type for the Query/OSLocatorsByScope RPC method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope_id` | [string](#string) | | |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+
+Top
+## provenance/marker/v1/genesis.proto
-
+
-### OSLocatorsByScopeResponse
-OSLocatorsByScopeResponse is the response type for the Query/OSLocatorsByScope RPC method.
+### DenySendAddress
+DenySendAddress defines addresses that are denied sends for marker denom
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locators` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | repeated | |
-| `request` | [OSLocatorsByScopeRequest](#provenance.metadata.v1.OSLocatorsByScopeRequest) | | request is a copy of the request that generated these results. |
+| `marker_address` | [string](#string) | | marker_address is the marker's address for denied address |
+| `deny_address` | [string](#string) | | deny_address defines all wallet addresses that are denied sends for the marker |
-
+
-### OSLocatorsByURIRequest
-OSLocatorsByURIRequest is the request type for the Query/OSLocatorsByURI RPC method.
+### GenesisState
+GenesisState defines the account module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `uri` | [string](#string) | | |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `params` | [Params](#provenance-marker-v1-Params) | | params defines all the parameters of the module. |
+| `markers` | [MarkerAccount](#provenance-marker-v1-MarkerAccount) | repeated | A collection of marker accounts to create on start |
+| `net_asset_values` | [MarkerNetAssetValues](#provenance-marker-v1-MarkerNetAssetValues) | repeated | list of marker net asset values |
+| `deny_send_addresses` | [DenySendAddress](#provenance-marker-v1-DenySendAddress) | repeated | list of denom based denied send addresses |
-
+
-### OSLocatorsByURIResponse
-OSLocatorsByURIResponse is the response type for the Query/OSLocatorsByURI RPC method.
+### MarkerNetAssetValues
+MarkerNetAssetValues defines the net asset values for a marker
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locators` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | repeated | |
-| `request` | [OSLocatorsByURIRequest](#provenance.metadata.v1.OSLocatorsByURIRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `address` | [string](#string) | | address defines the marker address |
+| `net_asset_values` | [NetAssetValue](#provenance-marker-v1-NetAssetValue) | repeated | net_asset_values that are assigned to marker |
+
-
+
-### OwnershipRequest
-OwnershipRequest is the request type for the Query/Ownership RPC method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+
+Top
+## provenance/marker/v1/proposals.proto
-
+
-### OwnershipResponse
-OwnershipResponse is the response type for the Query/Ownership RPC method.
+### AddMarkerProposal
+AddMarkerProposal is deprecated and can no longer be used.
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgAddMarkerRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_uuids` | [string](#string) | repeated | A list of scope ids (uuid) associated with the given address. |
-| `request` | [OwnershipRequest](#provenance.metadata.v1.OwnershipRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `manager` | [string](#string) | | |
+| `status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | |
+| `marker_type` | [MarkerType](#provenance-marker-v1-MarkerType) | | |
+| `access_list` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
+| `supply_fixed` | [bool](#bool) | | |
+| `allow_governance_control` | [bool](#bool) | | |
-
+
-### QueryParamsRequest
-QueryParamsRequest is the request type for the Query/Params RPC method.
+### ChangeStatusProposal
+ChangeStatusProposal defines a governance proposal to administer a marker to change its status
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgChangeStatusProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `new_status` | [MarkerStatus](#provenance-marker-v1-MarkerStatus) | | |
-
+
-### QueryParamsResponse
-QueryParamsResponse is the response type for the Query/Params RPC method.
+### RemoveAdministratorProposal
+RemoveAdministratorProposal defines a governance proposal to administer a marker and remove all permissions for a
+given address
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgRemoveAdministratorProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.metadata.v1.Params) | | params defines the parameters of the module. |
-| `request` | [QueryParamsRequest](#provenance.metadata.v1.QueryParamsRequest) | | request is a copy of the request that generated these results. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `removed_address` | [string](#string) | repeated | |
-
+
-### QueryScopeNetAssetValuesRequest
-QueryNetAssetValuesRequest is the request type for the Query/NetAssetValues method.
+### SetAdministratorProposal
+SetAdministratorProposal defines a governance proposal to administer a marker and set administrators with specific
+access on the marker
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgSetAdministratorProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [string](#string) | | scopeid metadata address |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `access` | [AccessGrant](#provenance-marker-v1-AccessGrant) | repeated | |
-
+
-### QueryScopeNetAssetValuesResponse
-QueryNetAssetValuesRequest is the response type for the Query/NetAssetValues method.
+### SetDenomMetadataProposal
+SetDenomMetadataProposal defines a governance proposal to set the metadata for a denom
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgSetDenomMetadataProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `net_asset_values` | [NetAssetValue](#provenance.metadata.v1.NetAssetValue) | repeated | net asset values for scope |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `metadata` | [cosmos.bank.v1beta1.Metadata](#cosmos-bank-v1beta1-Metadata) | | |
-
+
-### RecordSpecificationRequest
-RecordSpecificationRequest is the request type for the Query/RecordSpecification RPC method.
+### SupplyDecreaseProposal
+SupplyDecreaseProposal defines a governance proposal to administer a marker and decrease the total supply through
+burning coin held within the marker
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgSupplyDecreaseProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
-| `name` | [string](#string) | | name is the name of the record to look up. It is required if the specification_id is a uuid or contract specification address. It is ignored if the specification_id is a record specification address. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
-
+
-### RecordSpecificationResponse
-RecordSpecificationResponse is the response type for the Query/RecordSpecification RPC method.
+### SupplyIncreaseProposal
+SupplyIncreaseProposal defines a governance proposal to administer a marker and increase total supply of the marker
+through minting coin and placing it within the marker or assigning it directly to an account
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgSupplyIncreaseProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_specification` | [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper) | | record_specification is the wrapped record specification. |
-| `request` | [RecordSpecificationRequest](#provenance.metadata.v1.RecordSpecificationRequest) | | request is a copy of the request that generated these results. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | |
+| `target_address` | [string](#string) | | an optional target address for the minted coin from this request |
-
+
-### RecordSpecificationWrapper
-RecordSpecificationWrapper contains a single record specification and some extra identifiers for it.
+### WithdrawEscrowProposal
+WithdrawEscrowProposal defines a governance proposal to withdraw escrow coins from a marker
+Deprecated: This message is no longer usable. It is only still included for
+backwards compatibility (e.g. looking up old governance proposals).
+It is replaced by providing a MsgWithdrawEscrowProposalRequest in a governance proposal.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [RecordSpecification](#provenance.metadata.v1.RecordSpecification) | | specification is the on-chain record specification message. |
-| `record_spec_id_info` | [RecordSpecIdInfo](#provenance.metadata.v1.RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification. |
+| `title` | [string](#string) | | |
+| `description` | [string](#string) | | |
+| `denom` | [string](#string) | | |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | |
+| `target_address` | [string](#string) | | |
+
-
+
-### RecordSpecificationsAllRequest
-RecordSpecificationsAllRequest is the request type for the Query/RecordSpecificationsAll RPC method.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+
+Top
+## provenance/name/v1/tx.proto
-
+
-### RecordSpecificationsAllResponse
-RecordSpecificationsAllResponse is the response type for the Query/RecordSpecificationsAll RPC method.
+### MsgBindNameRequest
+MsgBindNameRequest defines an sdk.Msg type that is used to add an address/name binding under an optional parent name.
+The record may optionally be restricted to prevent additional names from being added under this one without the
+owner signing the request.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_specifications` | [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper) | repeated | record_specifications are the wrapped record specifications. |
-| `request` | [RecordSpecificationsAllRequest](#provenance.metadata.v1.RecordSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
-
+| `parent` | [NameRecord](#provenance-name-v1-NameRecord) | | The parent record to bind this name under. |
+| `record` | [NameRecord](#provenance-name-v1-NameRecord) | | The name record to bind under the parent |
-
-
-### RecordSpecificationsForContractSpecificationRequest
-RecordSpecificationsForContractSpecificationRequest is the request type for the
-Query/RecordSpecificationsForContractSpecification RPC method.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+### MsgBindNameResponse
+MsgBindNameResponse defines the Msg/BindName response type.
-
+
-### RecordSpecificationsForContractSpecificationResponse
-RecordSpecificationsForContractSpecificationResponse is the response type for the
-Query/RecordSpecificationsForContractSpecification RPC method.
+### MsgCreateRootNameRequest
+MsgCreateRootNameRequest defines an sdk.Msg type to create a new root name
+that is controlled by a given owner and optionally restricted to the owner
+for the sole creation of sub names.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_specifications` | [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper) | repeated | record_specifications is any number of wrapped record specifications associated with this contract_specification. |
-| `contract_specification_uuid` | [string](#string) | | contract_specification_uuid is the uuid of this contract specification. |
-| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the contract specification address as a bech32 encoded string. |
-| `request` | [RecordSpecificationsForContractSpecificationRequest](#provenance.metadata.v1.RecordSpecificationsForContractSpecificationRequest) | | request is a copy of the request that generated these results. |
-
-
+| `authority` | [string](#string) | | The signing authority for the request |
+| `record` | [NameRecord](#provenance-name-v1-NameRecord) | | NameRecord is a structure used to bind ownership of a name hierarchy to a collection of addresses |
-
-### RecordWrapper
-RecordWrapper contains a single record and some extra identifiers for it.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `record` | [Record](#provenance.metadata.v1.Record) | | record is the on-chain record message. |
-| `record_id_info` | [RecordIdInfo](#provenance.metadata.v1.RecordIdInfo) | | record_id_info contains information about the id/address of the record. |
-| `record_spec_id_info` | [RecordSpecIdInfo](#provenance.metadata.v1.RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification. |
+### MsgCreateRootNameResponse
+MsgCreateRootNameResponse defines Msg/CreateRootName response type.
-
+
-### RecordsAllRequest
-RecordsAllRequest is the request type for the Query/RecordsAll RPC method.
+### MsgDeleteNameRequest
+MsgDeleteNameRequest defines an sdk.Msg type that is used to remove an existing address/name binding. The binding
+may not have any child names currently bound for this request to be successful. All associated attributes on account
+addresses will be deleted.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+| `record` | [NameRecord](#provenance-name-v1-NameRecord) | | The record being removed |
-
-### RecordsAllResponse
-RecordsAllResponse is the response type for the Query/RecordsAll RPC method.
+
-
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `records` | [RecordWrapper](#provenance.metadata.v1.RecordWrapper) | repeated | records are the wrapped records. |
-| `request` | [RecordsAllRequest](#provenance.metadata.v1.RecordsAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+### MsgDeleteNameResponse
+MsgDeleteNameResponse defines the Msg/DeleteName response type.
-
+
-### RecordsRequest
-RecordsRequest is the request type for the Query/Records RPC method.
+### MsgModifyNameRequest
+MsgModifyNameRequest defines a governance method that is used to update an existing address/name binding.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
-| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
-| `session_id` | [string](#string) | | session_id can either be a uuid, e.g. 5803f8bc-6067-4eb5-951f-2121671c2ec0 or a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. This can only be a uuid if a scope_id is also provided. |
-| `name` | [string](#string) | | name is the name of the record to look for |
-| `include_scope` | [bool](#bool) | | include_scope is a flag for whether to include the the scope containing these records in the response. |
-| `include_sessions` | [bool](#bool) | | include_sessions is a flag for whether to include the sessions containing these records in the response. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
-
+| `authority` | [string](#string) | | The address signing the message |
+| `record` | [NameRecord](#provenance-name-v1-NameRecord) | | The record being updated |
-
-### RecordsResponse
-RecordsResponse is the response type for the Query/Records RPC method.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope` | [ScopeWrapper](#provenance.metadata.v1.ScopeWrapper) | | scope is the wrapped scope that holds these records (if requested). |
-| `sessions` | [SessionWrapper](#provenance.metadata.v1.SessionWrapper) | repeated | sessions is any number of wrapped sessions that hold these records (if requested). |
-| `records` | [RecordWrapper](#provenance.metadata.v1.RecordWrapper) | repeated | records is any number of wrapped record results. |
-| `request` | [RecordsRequest](#provenance.metadata.v1.RecordsRequest) | | request is a copy of the request that generated these results. |
+### MsgModifyNameResponse
+MsgModifyNameResponse defines the Msg/ModifyName response type.
-
+
-### ScopeRequest
-ScopeRequest is the request type for the Query/Scope RPC method.
+### MsgUpdateParamsRequest
+MsgUpdateParamsRequest is a request message for the UpdateParams endpoint.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
-| `session_addr` | [string](#string) | | session_addr is a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. |
-| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
-| `include_sessions` | [bool](#bool) | | include_sessions is a flag for whether to include the sessions of the scope in the response. |
-| `include_records` | [bool](#bool) | | include_records is a flag for whether to include the records of the scope in the response. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `authority` | [string](#string) | | authority should be the governance module account address. |
+| `params` | [Params](#provenance-name-v1-Params) | | params are the new param values to set. |
-
+
+
+### MsgUpdateParamsResponse
+MsgUpdateParamsResponse is a response message for the UpdateParams endpoint.
+
-### ScopeResponse
-ScopeResponse is the response type for the Query/Scope RPC method.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `scope` | [ScopeWrapper](#provenance.metadata.v1.ScopeWrapper) | | scope is the wrapped scope result. |
-| `sessions` | [SessionWrapper](#provenance.metadata.v1.SessionWrapper) | repeated | sessions is any number of wrapped sessions in this scope (if requested). |
-| `records` | [RecordWrapper](#provenance.metadata.v1.RecordWrapper) | repeated | records is any number of wrapped records in this scope (if requested). |
-| `request` | [ScopeRequest](#provenance.metadata.v1.ScopeRequest) | | request is a copy of the request that generated these results. |
+
+
+
+
-
+### Msg
+Msg defines the bank Msg service.
-### ScopeSpecificationRequest
-ScopeSpecificationRequest is the request type for the Query/ScopeSpecification RPC method.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `BindName` | [MsgBindNameRequest](#provenance-name-v1-MsgBindNameRequest) | [MsgBindNameResponse](#provenance-name-v1-MsgBindNameResponse) | BindName binds a name to an address under a root name. |
+| `DeleteName` | [MsgDeleteNameRequest](#provenance-name-v1-MsgDeleteNameRequest) | [MsgDeleteNameResponse](#provenance-name-v1-MsgDeleteNameResponse) | DeleteName defines a method to verify a particular invariance. |
+| `ModifyName` | [MsgModifyNameRequest](#provenance-name-v1-MsgModifyNameRequest) | [MsgModifyNameResponse](#provenance-name-v1-MsgModifyNameResponse) | ModifyName defines a method to modify the attributes of an existing name. |
+| `CreateRootName` | [MsgCreateRootNameRequest](#provenance-name-v1-MsgCreateRootNameRequest) | [MsgCreateRootNameResponse](#provenance-name-v1-MsgCreateRootNameResponse) | CreateRootName defines a governance method for creating a root name. |
+| `UpdateParams` | [MsgUpdateParamsRequest](#provenance-name-v1-MsgUpdateParamsRequest) | [MsgUpdateParamsResponse](#provenance-name-v1-MsgUpdateParamsResponse) | UpdateParams is a governance proposal endpoint for updating the name module's params. |
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. dc83ea70-eacd-40fe-9adf-1cf6148bf8a2 or a bech32 scope specification address, e.g. scopespec1qnwg86nsatx5pl56muw0v9ytlz3qu3jx6m. |
-| `include_contract_specs` | [bool](#bool) | | include_contract_specs is a flag for whether to include the contract specifications of the scope specification in the response. |
-| `include_record_specs` | [bool](#bool) | | include_record_specs is a flag for whether to include the record specifications of the scope specification in the response. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+
+Top
+## provenance/name/v1/name.proto
-
+
-### ScopeSpecificationResponse
-ScopeSpecificationResponse is the response type for the Query/ScopeSpecification RPC method.
+### CreateRootNameProposal
+CreateRootNameProposal details a proposal to create a new root name
+that is controlled by a given owner and optionally restricted to the owner
+for the sole creation of sub names.
+Deprecated: This legacy proposal is deprecated in favor of Msg-based gov
+proposals, see MsgCreateRootNameRequest.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_specification` | [ScopeSpecificationWrapper](#provenance.metadata.v1.ScopeSpecificationWrapper) | | scope_specification is the wrapped scope specification. |
-| `contract_specs` | [ContractSpecificationWrapper](#provenance.metadata.v1.ContractSpecificationWrapper) | repeated | contract_specs is any number of wrapped contract specifications in this scope specification (if requested). |
-| `record_specs` | [RecordSpecificationWrapper](#provenance.metadata.v1.RecordSpecificationWrapper) | repeated | record_specs is any number of wrapped record specifications in this scope specification (if requested). |
-| `request` | [ScopeSpecificationRequest](#provenance.metadata.v1.ScopeSpecificationRequest) | | request is a copy of the request that generated these results. |
+| `title` | [string](#string) | | proposal title |
+| `description` | [string](#string) | | proposal description |
+| `name` | [string](#string) | | the bound name |
+| `owner` | [string](#string) | | the address the name will resolve to |
+| `restricted` | [bool](#bool) | | a flag that indicates if an owner signature is required to add sub-names |
-
+
-### ScopeSpecificationWrapper
-ScopeSpecificationWrapper contains a single scope specification and some extra identifiers for it.
+### EventNameBound
+Event emitted when name is bound.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [ScopeSpecification](#provenance.metadata.v1.ScopeSpecification) | | specification is the on-chain scope specification message. |
-| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance.metadata.v1.ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification. |
+| `address` | [string](#string) | | |
+| `name` | [string](#string) | | |
+| `restricted` | [bool](#bool) | | |
-
+
-### ScopeSpecificationsAllRequest
-ScopeSpecificationsAllRequest is the request type for the Query/ScopeSpecificationsAll RPC method.
+### EventNameParamsUpdated
+EventNameParamsUpdated event emitted when name params are updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `allow_unrestricted_names` | [string](#string) | | |
+| `max_name_levels` | [string](#string) | | |
+| `min_segment_length` | [string](#string) | | |
+| `max_segment_length` | [string](#string) | | |
-
+
-### ScopeSpecificationsAllResponse
-ScopeSpecificationsAllResponse is the response type for the Query/ScopeSpecificationsAll RPC method.
+### EventNameUnbound
+Event emitted when name is unbound.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_specifications` | [ScopeSpecificationWrapper](#provenance.metadata.v1.ScopeSpecificationWrapper) | repeated | scope_specifications are the wrapped scope specifications. |
-| `request` | [ScopeSpecificationsAllRequest](#provenance.metadata.v1.ScopeSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `address` | [string](#string) | | |
+| `name` | [string](#string) | | |
+| `restricted` | [bool](#bool) | | |
-
+
-### ScopeWrapper
-SessionWrapper contains a single scope and its uuid.
+### EventNameUpdate
+Event emitted when name is updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope` | [Scope](#provenance.metadata.v1.Scope) | | scope is the on-chain scope message. |
-| `scope_id_info` | [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo) | | scope_id_info contains information about the id/address of the scope. |
-| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance.metadata.v1.ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification. |
+| `address` | [string](#string) | | |
+| `name` | [string](#string) | | |
+| `restricted` | [bool](#bool) | | |
-
+
-### ScopesAllRequest
-ScopesAllRequest is the request type for the Query/ScopesAll RPC method.
+### NameRecord
+NameRecord is a structure used to bind ownership of a name hierarchy to a collection of addresses
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `name` | [string](#string) | | the bound name |
+| `address` | [string](#string) | | the address the name resolved to |
+| `restricted` | [bool](#bool) | | whether owner signature is required to add sub-names |
-
+
-### ScopesAllResponse
-ScopesAllResponse is the response type for the Query/ScopesAll RPC method.
+### Params
+Params defines the set of params for the name module.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scopes` | [ScopeWrapper](#provenance.metadata.v1.ScopeWrapper) | repeated | scopes are the wrapped scopes. |
-| `request` | [ScopesAllRequest](#provenance.metadata.v1.ScopesAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
-
-
+| `max_segment_length` | [uint32](#uint32) | | maximum length of name segment to allow |
+| `min_segment_length` | [uint32](#uint32) | | minimum length of name segment to allow |
+| `max_name_levels` | [uint32](#uint32) | | maximum number of name segments to allow. Example: `foo.bar.baz` would be 3 |
+| `allow_unrestricted_names` | [bool](#bool) | | determines if unrestricted name keys are allowed or not |
-
-### SessionWrapper
-SessionWrapper contains a single session and some extra identifiers for it.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `session` | [Session](#provenance.metadata.v1.Session) | | session is the on-chain session message. |
-| `session_id_info` | [SessionIdInfo](#provenance.metadata.v1.SessionIdInfo) | | session_id_info contains information about the id/address of the session. |
-| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification. |
+
+
+
+Top
+## provenance/name/v1/query.proto
-
-### SessionsAllRequest
-SessionsAllRequest is the request type for the Query/SessionsAll RPC method.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
-
+
-### SessionsAllResponse
-SessionsAllResponse is the response type for the Query/SessionsAll RPC method.
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `sessions` | [SessionWrapper](#provenance.metadata.v1.SessionWrapper) | repeated | sessions are the wrapped sessions. |
-| `request` | [SessionsAllRequest](#provenance.metadata.v1.SessionsAllRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `params` | [Params](#provenance-name-v1-Params) | | params defines the parameters of the module. |
-
+
-### SessionsRequest
-SessionsRequest is the request type for the Query/Sessions RPC method.
+### QueryResolveRequest
+QueryResolveRequest is the request type for the Query/Resolve method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
-| `session_id` | [string](#string) | | session_id can either be a uuid, e.g. 5803f8bc-6067-4eb5-951f-2121671c2ec0 or a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. This can only be a uuid if a scope_id is also provided. |
-| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
-| `record_name` | [string](#string) | | record_name is the name of the record to find the session for in the provided scope. |
-| `include_scope` | [bool](#bool) | | include_scope is a flag for whether to include the scope containing these sessions in the response. |
-| `include_records` | [bool](#bool) | | include_records is a flag for whether to include the records of these sessions in the response. |
-| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `name` | [string](#string) | | name to resolve the address for |
-
+
-### SessionsResponse
-SessionsResponse is the response type for the Query/Sessions RPC method.
+### QueryResolveResponse
+QueryResolveResponse is the response type for the Query/Resolve method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope` | [ScopeWrapper](#provenance.metadata.v1.ScopeWrapper) | | scope is the wrapped scope that holds these sessions (if requested). |
-| `sessions` | [SessionWrapper](#provenance.metadata.v1.SessionWrapper) | repeated | sessions is any number of wrapped session results. |
-| `records` | [RecordWrapper](#provenance.metadata.v1.RecordWrapper) | repeated | records is any number of wrapped records contained in these sessions (if requested). |
-| `request` | [SessionsRequest](#provenance.metadata.v1.SessionsRequest) | | request is a copy of the request that generated these results. |
+| `address` | [string](#string) | | a string containing the address the name resolves to |
+| `restricted` | [bool](#bool) | | Whether owner signature is required to add sub-names. |
-
+
-### ValueOwnershipRequest
-ValueOwnershipRequest is the request type for the Query/ValueOwnership RPC method.
+### QueryReverseLookupRequest
+QueryReverseLookupRequest is the request type for the Query/ReverseLookup method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines optional pagination parameters for the request. |
+| `address` | [string](#string) | | address to find name records for |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### ValueOwnershipResponse
-ValueOwnershipResponse is the response type for the Query/ValueOwnership RPC method.
+### QueryReverseLookupResponse
+QueryReverseLookupResponse is the response type for the Query/Resolve method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_uuids` | [string](#string) | repeated | A list of scope ids (uuid) associated with the given address. |
-| `request` | [ValueOwnershipRequest](#provenance.metadata.v1.ValueOwnershipRequest) | | request is a copy of the request that generated these results. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination provides the pagination information of this response. |
+| `name` | [string](#string) | repeated | an array of names bound against a given address |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
@@ -8671,84 +9188,61 @@ ValueOwnershipResponse is the response type for the Query/ValueOwnership RPC met
-
+
### Query
-Query defines the Metadata Query service.
+Query defines the gRPC querier service for distribution module.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [QueryParamsRequest](#provenance.metadata.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.metadata.v1.QueryParamsResponse) | Params queries the parameters of x/metadata module. | GET|/provenance/metadata/v1/params|
-| `Scope` | [ScopeRequest](#provenance.metadata.v1.ScopeRequest) | [ScopeResponse](#provenance.metadata.v1.ScopeResponse) | Scope searches for a scope.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-name-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-name-v1-QueryParamsResponse) | Params queries params of the name module. |
+| `Resolve` | [QueryResolveRequest](#provenance-name-v1-QueryResolveRequest) | [QueryResolveResponse](#provenance-name-v1-QueryResolveResponse) | Resolve queries for the address associated with a given name |
+| `ReverseLookup` | [QueryReverseLookupRequest](#provenance-name-v1-QueryReverseLookupRequest) | [QueryReverseLookupResponse](#provenance-name-v1-QueryReverseLookupResponse) | ReverseLookup queries for all names bound against a given address |
+
+
-The scope id, if provided, must either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. The session addr, if provided, must be a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3.
-* If only a scope_id is provided, that scope is returned. * If only a session_addr is provided, the scope containing that session is returned. * If only a record_addr is provided, the scope containing that record is returned. * If more than one of scope_id, session_addr, and record_addr are provided, and they don't refer to the same scope, a bad request is returned.
-Providing a session addr or record addr does not limit the sessions and records returned (if requested). Those parameters are only used to find the scope.
+
+Top
-By default, sessions and records are not included. Set include_sessions and/or include_records to true to include sessions and/or records. | GET|/provenance/metadata/v1/scope/{scope_id}GET|/provenance/metadata/v1/session/{session_addr}/scopeGET|/provenance/metadata/v1/record/{record_addr}/scope|
-| `ScopesAll` | [ScopesAllRequest](#provenance.metadata.v1.ScopesAllRequest) | [ScopesAllResponse](#provenance.metadata.v1.ScopesAllResponse) | ScopesAll retrieves all scopes. | GET|/provenance/metadata/v1/scopes/all|
-| `Sessions` | [SessionsRequest](#provenance.metadata.v1.SessionsRequest) | [SessionsResponse](#provenance.metadata.v1.SessionsResponse) | Sessions searches for sessions.
+## provenance/name/v1/genesis.proto
-The scope_id can either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. Similarly, the session_id can either be a uuid or session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3.
-* If only a scope_id is provided, all sessions in that scope are returned. * If only a session_id is provided, it must be an address, and that single session is returned. * If the session_id is a uuid, then either a scope_id or record_addr must also be provided, and that single session is returned. * If only a record_addr is provided, the session containing that record will be returned. * If a record_name is provided then either a scope_id, session_id as an address, or record_addr must also be provided, and the session containing that record will be returned.
-A bad request is returned if: * The session_id is a uuid and is provided without a scope_id or record_addr. * A record_name is provided without any way to identify the scope (e.g. a scope_id, a session_id as an address, or a record_addr). * Two or more of scope_id, session_id as an address, and record_addr are provided and don't all refer to the same scope. * A record_addr (or scope_id and record_name) is provided with a session_id and that session does not contain such a record. * A record_addr and record_name are both provided, but reference different records.
+
-By default, the scope and records are not included. Set include_scope and/or include_records to true to include the scope and/or records. | GET|/provenance/metadata/v1/session/{session_id}GET|/provenance/metadata/v1/scope/{scope_id}/sessionsGET|/provenance/metadata/v1/scope/{scope_id}/session/{session_id}GET|/provenance/metadata/v1/record/{record_addr}/sessionGET|/provenance/metadata/v1/scope/{scope_id}/record/{record_name}/session|
-| `SessionsAll` | [SessionsAllRequest](#provenance.metadata.v1.SessionsAllRequest) | [SessionsAllResponse](#provenance.metadata.v1.SessionsAllResponse) | SessionsAll retrieves all sessions. | GET|/provenance/metadata/v1/sessions/all|
-| `Records` | [RecordsRequest](#provenance.metadata.v1.RecordsRequest) | [RecordsResponse](#provenance.metadata.v1.RecordsResponse) | Records searches for records.
+### GenesisState
+GenesisState defines the name module's genesis state.
-The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. The scope-id can either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. Similarly, the session_id can either be a uuid or session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The name is the name of the record you're interested in.
-* If only a record_addr is provided, that single record will be returned. * If only a scope_id is provided, all records in that scope will be returned. * If only a session_id (or scope_id/session_id), all records in that session will be returned. * If a name is provided with a scope_id and/or session_id, that single record will be returned.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `params` | [Params](#provenance-name-v1-Params) | | params defines all the parameters of the module. |
+| `bindings` | [NameRecord](#provenance-name-v1-NameRecord) | repeated | bindings defines all the name records present at genesis |
-A bad request is returned if: * The session_id is a uuid and no scope_id is provided. * There are two or more of record_addr, session_id, and scope_id, and they don't all refer to the same scope. * A name is provided, but not a scope_id and/or a session_id. * A name and record_addr are provided and the name doesn't match the record_addr.
-By default, the scope and sessions are not included. Set include_scope and/or include_sessions to true to include the scope and/or sessions. | GET|/provenance/metadata/v1/record/{record_addr}GET|/provenance/metadata/v1/scope/{scope_id}/recordsGET|/provenance/metadata/v1/scope/{scope_id}/record/{name}GET|/provenance/metadata/v1/scope/{scope_id}/session/{session_id}/recordsGET|/provenance/metadata/v1/scope/{scope_id}/session/{session_id}/record/{name}GET|/provenance/metadata/v1/session/{session_id}/recordsGET|/provenance/metadata/v1/session/{session_id}/record/{name}|
-| `RecordsAll` | [RecordsAllRequest](#provenance.metadata.v1.RecordsAllRequest) | [RecordsAllResponse](#provenance.metadata.v1.RecordsAllResponse) | RecordsAll retrieves all records. | GET|/provenance/metadata/v1/records/all|
-| `Ownership` | [OwnershipRequest](#provenance.metadata.v1.OwnershipRequest) | [OwnershipResponse](#provenance.metadata.v1.OwnershipResponse) | Ownership returns the scope identifiers that list the given address as either a data or value owner. | GET|/provenance/metadata/v1/ownership/{address}|
-| `ValueOwnership` | [ValueOwnershipRequest](#provenance.metadata.v1.ValueOwnershipRequest) | [ValueOwnershipResponse](#provenance.metadata.v1.ValueOwnershipResponse) | ValueOwnership returns the scope identifiers that list the given address as the value owner. | GET|/provenance/metadata/v1/valueownership/{address}|
-| `ScopeSpecification` | [ScopeSpecificationRequest](#provenance.metadata.v1.ScopeSpecificationRequest) | [ScopeSpecificationResponse](#provenance.metadata.v1.ScopeSpecificationResponse) | ScopeSpecification returns a scope specification for the given specification id.
-The specification_id can either be a uuid, e.g. dc83ea70-eacd-40fe-9adf-1cf6148bf8a2 or a bech32 scope specification address, e.g. scopespec1qnwg86nsatx5pl56muw0v9ytlz3qu3jx6m.
-By default, the contract and record specifications are not included. Set include_contract_specs and/or include_record_specs to true to include contract and/or record specifications. | GET|/provenance/metadata/v1/scopespec/{specification_id}|
-| `ScopeSpecificationsAll` | [ScopeSpecificationsAllRequest](#provenance.metadata.v1.ScopeSpecificationsAllRequest) | [ScopeSpecificationsAllResponse](#provenance.metadata.v1.ScopeSpecificationsAllResponse) | ScopeSpecificationsAll retrieves all scope specifications. | GET|/provenance/metadata/v1/scopespecs/all|
-| `ContractSpecification` | [ContractSpecificationRequest](#provenance.metadata.v1.ContractSpecificationRequest) | [ContractSpecificationResponse](#provenance.metadata.v1.ContractSpecificationResponse) | ContractSpecification returns a contract specification for the given specification id.
-The specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84, a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn, or a bech32 record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. If it is a record specification address, then the contract specification that contains that record specification is looked up.
+
-By default, the record specifications for this contract specification are not included. Set include_record_specs to true to include them in the result. | GET|/provenance/metadata/v1/contractspec/{specification_id}|
-| `ContractSpecificationsAll` | [ContractSpecificationsAllRequest](#provenance.metadata.v1.ContractSpecificationsAllRequest) | [ContractSpecificationsAllResponse](#provenance.metadata.v1.ContractSpecificationsAllResponse) | ContractSpecificationsAll retrieves all contract specifications. | GET|/provenance/metadata/v1/contractspecs/all|
-| `RecordSpecificationsForContractSpecification` | [RecordSpecificationsForContractSpecificationRequest](#provenance.metadata.v1.RecordSpecificationsForContractSpecificationRequest) | [RecordSpecificationsForContractSpecificationResponse](#provenance.metadata.v1.RecordSpecificationsForContractSpecificationResponse) | RecordSpecificationsForContractSpecification returns the record specifications for the given input.
+
-The specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84, a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn, or a bech32 record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. If it is a record specification address, then the contract specification that contains that record specification is used. | GET|/provenance/metadata/v1/contractspec/{specification_id}/recordspecs|
-| `RecordSpecification` | [RecordSpecificationRequest](#provenance.metadata.v1.RecordSpecificationRequest) | [RecordSpecificationResponse](#provenance.metadata.v1.RecordSpecificationResponse) | RecordSpecification returns a record specification for the given input. | GET|/provenance/metadata/v1/recordspec/{specification_id}GET|/provenance/metadata/v1/contractspec/{specification_id}/recordspec/{name}|
-| `RecordSpecificationsAll` | [RecordSpecificationsAllRequest](#provenance.metadata.v1.RecordSpecificationsAllRequest) | [RecordSpecificationsAllResponse](#provenance.metadata.v1.RecordSpecificationsAllResponse) | RecordSpecificationsAll retrieves all record specifications. | GET|/provenance/metadata/v1/recordspecs/all|
-| `GetByAddr` | [GetByAddrRequest](#provenance.metadata.v1.GetByAddrRequest) | [GetByAddrResponse](#provenance.metadata.v1.GetByAddrResponse) | GetByAddr retrieves metadata given any address(es). | GET|/provenance/metadata/v1/addr/{addrs}|
-| `OSLocatorParams` | [OSLocatorParamsRequest](#provenance.metadata.v1.OSLocatorParamsRequest) | [OSLocatorParamsResponse](#provenance.metadata.v1.OSLocatorParamsResponse) | OSLocatorParams returns all parameters for the object store locator sub module. | GET|/provenance/metadata/v1/locator/params|
-| `OSLocator` | [OSLocatorRequest](#provenance.metadata.v1.OSLocatorRequest) | [OSLocatorResponse](#provenance.metadata.v1.OSLocatorResponse) | OSLocator returns an ObjectStoreLocator by its owner's address. | GET|/provenance/metadata/v1/locator/{owner}|
-| `OSLocatorsByURI` | [OSLocatorsByURIRequest](#provenance.metadata.v1.OSLocatorsByURIRequest) | [OSLocatorsByURIResponse](#provenance.metadata.v1.OSLocatorsByURIResponse) | OSLocatorsByURI returns all ObjectStoreLocator entries for a locator uri. | GET|/provenance/metadata/v1/locator/uri/{uri}|
-| `OSLocatorsByScope` | [OSLocatorsByScopeRequest](#provenance.metadata.v1.OSLocatorsByScopeRequest) | [OSLocatorsByScopeResponse](#provenance.metadata.v1.OSLocatorsByScopeResponse) | OSLocatorsByScope returns all ObjectStoreLocator entries for a for all signer's present in the specified scope. | GET|/provenance/metadata/v1/locator/scope/{scope_id}|
-| `OSAllLocators` | [OSAllLocatorsRequest](#provenance.metadata.v1.OSAllLocatorsRequest) | [OSAllLocatorsResponse](#provenance.metadata.v1.OSAllLocatorsResponse) | OSAllLocators returns all ObjectStoreLocator entries. | GET|/provenance/metadata/v1/locators/all|
-| `AccountData` | [AccountDataRequest](#provenance.metadata.v1.AccountDataRequest) | [AccountDataResponse](#provenance.metadata.v1.AccountDataResponse) | AccountData gets the account data associated with a metadata address. Currently, only scope ids are supported. | GET|/provenance/metadata/v1/accountdata/{metadata_addr}|
-| `ScopeNetAssetValues` | [QueryScopeNetAssetValuesRequest](#provenance.metadata.v1.QueryScopeNetAssetValuesRequest) | [QueryScopeNetAssetValuesResponse](#provenance.metadata.v1.QueryScopeNetAssetValuesResponse) | ScopeNetAssetValues returns net asset values for scope | GET|/provenance/metadata/v1/netassetvalues/{id}|
+
-
+
Top
## provenance/metadata/v1/tx.proto
-
+
### MsgAddContractSpecToScopeSpecRequest
MsgAddContractSpecToScopeSpecRequest is the request type for the Msg/AddContractSpecToScopeSpec RPC method.
@@ -8765,7 +9259,7 @@ MsgAddContractSpecToScopeSpecRequest is the request type for the Msg/AddContract
-
+
### MsgAddContractSpecToScopeSpecResponse
MsgAddContractSpecToScopeSpecResponse is the response type for the Msg/AddContractSpecToScopeSpec RPC method.
@@ -8775,7 +9269,7 @@ MsgAddContractSpecToScopeSpecResponse is the response type for the Msg/AddContra
-
+
### MsgAddNetAssetValuesRequest
MsgAddNetAssetValuesRequest defines the Msg/AddNetAssetValues request type
@@ -8785,14 +9279,14 @@ MsgAddNetAssetValuesRequest defines the Msg/AddNetAssetValues request type
| ----- | ---- | ----- | ----------- |
| `scope_id` | [string](#string) | | |
| `signers` | [string](#string) | repeated | |
-| `net_asset_values` | [NetAssetValue](#provenance.metadata.v1.NetAssetValue) | repeated | |
+| `net_asset_values` | [NetAssetValue](#provenance-metadata-v1-NetAssetValue) | repeated | |
-
+
### MsgAddNetAssetValuesResponse
MsgAddNetAssetValuesResponse defines the Msg/AddNetAssetValue response type
@@ -8802,7 +9296,7 @@ MsgAddNetAssetValuesResponse defines the Msg/AddNetAssetValue response type
-
+
### MsgAddScopeDataAccessRequest
MsgAddScopeDataAccessRequest is the request to add data access AccAddress to scope
@@ -8819,7 +9313,7 @@ MsgAddScopeDataAccessRequest is the request to add data access AccAddress to sco
-
+
### MsgAddScopeDataAccessResponse
MsgAddScopeDataAccessResponse is the response for adding data access AccAddress to scope
@@ -8829,7 +9323,7 @@ MsgAddScopeDataAccessResponse is the response for adding data access AccAddress
-
+
### MsgAddScopeOwnerRequest
MsgAddScopeOwnerRequest is the request to add owner AccAddress to scope
@@ -8838,7 +9332,7 @@ MsgAddScopeOwnerRequest is the request to add owner AccAddress to scope
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `scope_id` | [bytes](#bytes) | | scope MetadataAddress for updating data access |
-| `owners` | [Party](#provenance.metadata.v1.Party) | repeated | owner parties to add to the scope |
+| `owners` | [Party](#provenance-metadata-v1-Party) | repeated | owner parties to add to the scope |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
@@ -8846,7 +9340,7 @@ MsgAddScopeOwnerRequest is the request to add owner AccAddress to scope
-
+
### MsgAddScopeOwnerResponse
MsgAddScopeOwnerResponse is the response for adding owner AccAddresses to scope
@@ -8856,7 +9350,7 @@ MsgAddScopeOwnerResponse is the response for adding owner AccAddresses to scope
-
+
### MsgBindOSLocatorRequest
MsgBindOSLocatorRequest is the request type for the Msg/BindOSLocator RPC method.
@@ -8864,14 +9358,14 @@ MsgBindOSLocatorRequest is the request type for the Msg/BindOSLocator RPC method
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | The object locator to bind the address to bind to the URI. |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | The object locator to bind the address to bind to the URI. |
-
+
### MsgBindOSLocatorResponse
MsgBindOSLocatorResponse is the response type for the Msg/BindOSLocator RPC method.
@@ -8879,14 +9373,14 @@ MsgBindOSLocatorResponse is the response type for the Msg/BindOSLocator RPC meth
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | |
-
+
### MsgDeleteContractSpecFromScopeSpecRequest
MsgDeleteContractSpecFromScopeSpecRequest is the request type for the Msg/DeleteContractSpecFromScopeSpec RPC method.
@@ -8903,7 +9397,7 @@ MsgDeleteContractSpecFromScopeSpecRequest is the request type for the Msg/Delete
-
+
### MsgDeleteContractSpecFromScopeSpecResponse
MsgDeleteContractSpecFromScopeSpecResponse is the response type for the Msg/DeleteContractSpecFromScopeSpec RPC
@@ -8914,7 +9408,7 @@ method.
-
+
### MsgDeleteContractSpecificationRequest
MsgDeleteContractSpecificationRequest is the request type for the Msg/DeleteContractSpecification RPC method.
@@ -8930,7 +9424,7 @@ MsgDeleteContractSpecificationRequest is the request type for the Msg/DeleteCont
-
+
### MsgDeleteContractSpecificationResponse
MsgDeleteContractSpecificationResponse is the response type for the Msg/DeleteContractSpecification RPC method.
@@ -8940,7 +9434,7 @@ MsgDeleteContractSpecificationResponse is the response type for the Msg/DeleteCo
-
+
### MsgDeleteOSLocatorRequest
MsgDeleteOSLocatorRequest is the request type for the Msg/DeleteOSLocator RPC method.
@@ -8948,14 +9442,14 @@ MsgDeleteOSLocatorRequest is the request type for the Msg/DeleteOSLocator RPC me
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | The record being removed |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | The record being removed |
-
+
### MsgDeleteOSLocatorResponse
MsgDeleteOSLocatorResponse is the response type for the Msg/DeleteOSLocator RPC method.
@@ -8963,14 +9457,14 @@ MsgDeleteOSLocatorResponse is the response type for the Msg/DeleteOSLocator RPC
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | |
-
+
### MsgDeleteRecordRequest
MsgDeleteRecordRequest is the request type for the Msg/DeleteRecord RPC method.
@@ -8986,7 +9480,7 @@ MsgDeleteRecordRequest is the request type for the Msg/DeleteRecord RPC method.
-
+
### MsgDeleteRecordResponse
MsgDeleteRecordResponse is the response type for the Msg/DeleteRecord RPC method.
@@ -8996,7 +9490,7 @@ MsgDeleteRecordResponse is the response type for the Msg/DeleteRecord RPC method
-
+
### MsgDeleteRecordSpecificationRequest
MsgDeleteRecordSpecificationRequest is the request type for the Msg/DeleteRecordSpecification RPC method.
@@ -9012,7 +9506,7 @@ MsgDeleteRecordSpecificationRequest is the request type for the Msg/DeleteRecord
-
+
### MsgDeleteRecordSpecificationResponse
MsgDeleteRecordSpecificationResponse is the response type for the Msg/DeleteRecordSpecification RPC method.
@@ -9022,7 +9516,7 @@ MsgDeleteRecordSpecificationResponse is the response type for the Msg/DeleteReco
-
+
### MsgDeleteScopeDataAccessRequest
MsgDeleteScopeDataAccessRequest is the request to remove data access AccAddress to scope
@@ -9039,7 +9533,7 @@ MsgDeleteScopeDataAccessRequest is the request to remove data access AccAddress
-
+
### MsgDeleteScopeDataAccessResponse
MsgDeleteScopeDataAccessResponse is the response from removing data access AccAddress to scope
@@ -9049,7 +9543,7 @@ MsgDeleteScopeDataAccessResponse is the response from removing data access AccAd
-
+
### MsgDeleteScopeOwnerRequest
MsgDeleteScopeOwnerRequest is the request to remove owner AccAddresses to scope
@@ -9066,7 +9560,7 @@ MsgDeleteScopeOwnerRequest is the request to remove owner AccAddresses to scope
-
+
### MsgDeleteScopeOwnerResponse
MsgDeleteScopeOwnerResponse is the response from removing owner AccAddress to scope
@@ -9076,7 +9570,7 @@ MsgDeleteScopeOwnerResponse is the response from removing owner AccAddress to sc
-
+
### MsgDeleteScopeRequest
MsgDeleteScopeRequest is the request type for the Msg/DeleteScope RPC method.
@@ -9092,7 +9586,7 @@ MsgDeleteScopeRequest is the request type for the Msg/DeleteScope RPC method.
-
+
### MsgDeleteScopeResponse
MsgDeleteScopeResponse is the response type for the Msg/DeleteScope RPC method.
@@ -9102,7 +9596,7 @@ MsgDeleteScopeResponse is the response type for the Msg/DeleteScope RPC method.
-
+
### MsgDeleteScopeSpecificationRequest
MsgDeleteScopeSpecificationRequest is the request type for the Msg/DeleteScopeSpecification RPC method.
@@ -9118,7 +9612,7 @@ MsgDeleteScopeSpecificationRequest is the request type for the Msg/DeleteScopeSp
-
+
### MsgDeleteScopeSpecificationResponse
MsgDeleteScopeSpecificationResponse is the response type for the Msg/DeleteScopeSpecification RPC method.
@@ -9128,7 +9622,7 @@ MsgDeleteScopeSpecificationResponse is the response type for the Msg/DeleteScope
-
+
### MsgMigrateValueOwnerRequest
MsgMigrateValueOwnerRequest is the request to migrate all scopes with one value owner to another value owner.
@@ -9145,7 +9639,7 @@ MsgMigrateValueOwnerRequest is the request to migrate all scopes with one value
-
+
### MsgMigrateValueOwnerResponse
MsgMigrateValueOwnerResponse is the response from migrating a value owner address.
@@ -9155,7 +9649,7 @@ MsgMigrateValueOwnerResponse is the response from migrating a value owner addres
-
+
### MsgModifyOSLocatorRequest
MsgModifyOSLocatorRequest is the request type for the Msg/ModifyOSLocator RPC method.
@@ -9163,14 +9657,14 @@ MsgModifyOSLocatorRequest is the request type for the Msg/ModifyOSLocator RPC me
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | The object locator to bind the address to bind to the URI. |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | The object locator to bind the address to bind to the URI. |
-
+
### MsgModifyOSLocatorResponse
MsgModifyOSLocatorResponse is the response type for the Msg/ModifyOSLocator RPC method.
@@ -9178,14 +9672,14 @@ MsgModifyOSLocatorResponse is the response type for the Msg/ModifyOSLocator RPC
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `locator` | [ObjectStoreLocator](#provenance.metadata.v1.ObjectStoreLocator) | | |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | |
-
+
### MsgP8eMemorializeContractRequest
MsgP8eMemorializeContractRequest has been deprecated and is no longer usable.
@@ -9197,9 +9691,9 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
| `scope_id` | [string](#string) | | |
| `group_id` | [string](#string) | | |
| `scope_specification_id` | [string](#string) | | |
-| `recitals` | [p8e.Recitals](#provenance.metadata.v1.p8e.Recitals) | | |
-| `contract` | [p8e.Contract](#provenance.metadata.v1.p8e.Contract) | | |
-| `signatures` | [p8e.SignatureSet](#provenance.metadata.v1.p8e.SignatureSet) | | |
+| `recitals` | [p8e.Recitals](#provenance-metadata-v1-p8e-Recitals) | | |
+| `contract` | [p8e.Contract](#provenance-metadata-v1-p8e-Contract) | | |
+| `signatures` | [p8e.SignatureSet](#provenance-metadata-v1-p8e-SignatureSet) | | |
| `invoker` | [string](#string) | | |
@@ -9207,7 +9701,7 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
-
+
### MsgP8eMemorializeContractResponse
MsgP8eMemorializeContractResponse has been deprecated and is no longer usable.
@@ -9216,16 +9710,16 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_id_info` | [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo) | | |
-| `session_id_info` | [SessionIdInfo](#provenance.metadata.v1.SessionIdInfo) | | |
-| `record_id_infos` | [RecordIdInfo](#provenance.metadata.v1.RecordIdInfo) | repeated | |
+| `scope_id_info` | [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo) | | |
+| `session_id_info` | [SessionIdInfo](#provenance-metadata-v1-SessionIdInfo) | | |
+| `record_id_infos` | [RecordIdInfo](#provenance-metadata-v1-RecordIdInfo) | repeated | |
-
+
### MsgSetAccountDataRequest
MsgSetAccountDataRequest is the request to set/update/delete a scope's account data.
@@ -9242,7 +9736,7 @@ MsgSetAccountDataRequest is the request to set/update/delete a scope's account d
-
+
### MsgSetAccountDataResponse
MsgSetAccountDataResponse is the response from setting/updating/deleting a scope's account data.
@@ -9252,7 +9746,7 @@ MsgSetAccountDataResponse is the response from setting/updating/deleting a scope
-
+
### MsgUpdateValueOwnersRequest
MsgUpdateValueOwnersRequest is the request to update the value owner addresses in one or more scopes.
@@ -9269,7 +9763,7 @@ MsgUpdateValueOwnersRequest is the request to update the value owner addresses i
-
+
### MsgUpdateValueOwnersResponse
MsgUpdateValueOwnersResponse is the response from updating value owner addresses in one or more scopes.
@@ -9279,7 +9773,7 @@ MsgUpdateValueOwnersResponse is the response from updating value owner addresses
-
+
### MsgWriteContractSpecificationRequest
MsgWriteContractSpecificationRequest is the request type for the Msg/WriteContractSpecification RPC method.
@@ -9287,7 +9781,7 @@ MsgWriteContractSpecificationRequest is the request type for the Msg/WriteContra
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [ContractSpecification](#provenance.metadata.v1.ContractSpecification) | | specification is the ContractSpecification you want added or updated. |
+| `specification` | [ContractSpecification](#provenance-metadata-v1-ContractSpecification) | | specification is the ContractSpecification you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
| `spec_uuid` | [string](#string) | | spec_uuid is an optional contract specification uuid string, e.g. "def6bc0a-c9dd-4874-948f-5206e6060a84" If provided, it will be used to generate the MetadataAddress for the contract specification which will override the specification_id in the provided specification. If not provided (or it is an empty string), nothing special happens. If there is a value in specification.specification_id that is different from the one created from this uuid, an error is returned. |
@@ -9296,7 +9790,7 @@ MsgWriteContractSpecificationRequest is the request type for the Msg/WriteContra
-
+
### MsgWriteContractSpecificationResponse
MsgWriteContractSpecificationResponse is the response type for the Msg/WriteContractSpecification RPC method.
@@ -9304,14 +9798,14 @@ MsgWriteContractSpecificationResponse is the response type for the Msg/WriteCont
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification that was added or updated. |
+| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification that was added or updated. |
-
+
### MsgWriteP8eContractSpecRequest
MsgWriteP8eContractSpecRequest has been deprecated and is no longer usable.
@@ -9320,7 +9814,7 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contractspec` | [p8e.ContractSpec](#provenance.metadata.v1.p8e.ContractSpec) | | |
+| `contractspec` | [p8e.ContractSpec](#provenance-metadata-v1-p8e-ContractSpec) | | |
| `signers` | [string](#string) | repeated | |
@@ -9328,7 +9822,7 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
-
+
### MsgWriteP8eContractSpecResponse
MsgWriteP8eContractSpecResponse has been deprecated and is no longer usable.
@@ -9337,15 +9831,15 @@ Deprecated: This message is no longer part of any endpoint and cannot be used fo
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance.metadata.v1.ContractSpecIdInfo) | | |
-| `record_spec_id_infos` | [RecordSpecIdInfo](#provenance.metadata.v1.RecordSpecIdInfo) | repeated | |
+| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo) | | |
+| `record_spec_id_infos` | [RecordSpecIdInfo](#provenance-metadata-v1-RecordSpecIdInfo) | repeated | |
-
+
### MsgWriteRecordRequest
MsgWriteRecordRequest is the request type for the Msg/WriteRecord RPC method.
@@ -9353,18 +9847,18 @@ MsgWriteRecordRequest is the request type for the Msg/WriteRecord RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record` | [Record](#provenance.metadata.v1.Record) | | record is the Record you want added or updated. |
+| `record` | [Record](#provenance-metadata-v1-Record) | | record is the Record you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
-| `session_id_components` | [SessionIdComponents](#provenance.metadata.v1.SessionIdComponents) | | SessionIDComponents is an optional (alternate) way of defining what the session_id should be in the provided record. If provided, it must have both a scope and session_uuid. Those components will be used to create the MetadataAddress for the session which will override the session_id in the provided record. If not provided (or all empty), nothing special happens. If there is a value in record.session_id that is different from the one created from these components, an error is returned. |
+| `session_id_components` | [SessionIdComponents](#provenance-metadata-v1-SessionIdComponents) | | SessionIDComponents is an optional (alternate) way of defining what the session_id should be in the provided record. If provided, it must have both a scope and session_uuid. Those components will be used to create the MetadataAddress for the session which will override the session_id in the provided record. If not provided (or all empty), nothing special happens. If there is a value in record.session_id that is different from the one created from these components, an error is returned. |
| `contract_spec_uuid` | [string](#string) | | contract_spec_uuid is an optional contract specification uuid string, e.g. "def6bc0a-c9dd-4874-948f-5206e6060a84" If provided, it will be combined with the record name to generate the MetadataAddress for the record specification which will override the specification_id in the provided record. If not provided (or it is an empty string), nothing special happens. If there is a value in record.specification_id that is different from the one created from this uuid and record.name, an error is returned. |
-| `parties` | [Party](#provenance.metadata.v1.Party) | repeated | parties is the list of parties involved with this record. Deprecated: This field is ignored. The parties are identified in the session and as signers. |
+| `parties` | [Party](#provenance-metadata-v1-Party) | repeated | parties is the list of parties involved with this record. Deprecated: This field is ignored. The parties are identified in the session and as signers. |
-
+
### MsgWriteRecordResponse
MsgWriteRecordResponse is the response type for the Msg/WriteRecord RPC method.
@@ -9372,14 +9866,14 @@ MsgWriteRecordResponse is the response type for the Msg/WriteRecord RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_id_info` | [RecordIdInfo](#provenance.metadata.v1.RecordIdInfo) | | record_id_info contains information about the id/address of the record that was added or updated. |
+| `record_id_info` | [RecordIdInfo](#provenance-metadata-v1-RecordIdInfo) | | record_id_info contains information about the id/address of the record that was added or updated. |
-
+
### MsgWriteRecordSpecificationRequest
MsgWriteRecordSpecificationRequest is the request type for the Msg/WriteRecordSpecification RPC method.
@@ -9387,7 +9881,7 @@ MsgWriteRecordSpecificationRequest is the request type for the Msg/WriteRecordSp
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [RecordSpecification](#provenance.metadata.v1.RecordSpecification) | | specification is the RecordSpecification you want added or updated. |
+| `specification` | [RecordSpecification](#provenance-metadata-v1-RecordSpecification) | | specification is the RecordSpecification you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
| `contract_spec_uuid` | [string](#string) | | contract_spec_uuid is an optional contract specification uuid string, e.g. "def6bc0a-c9dd-4874-948f-5206e6060a84" If provided, it will be combined with the record specification name to generate the MetadataAddress for the record specification which will override the specification_id in the provided specification. If not provided (or it is an empty string), nothing special happens. If there is a value in specification.specification_id that is different from the one created from this uuid and specification.name, an error is returned. |
@@ -9396,7 +9890,7 @@ MsgWriteRecordSpecificationRequest is the request type for the Msg/WriteRecordSp
-
+
### MsgWriteRecordSpecificationResponse
MsgWriteRecordSpecificationResponse is the response type for the Msg/WriteRecordSpecification RPC method.
@@ -9404,14 +9898,14 @@ MsgWriteRecordSpecificationResponse is the response type for the Msg/WriteRecord
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record_spec_id_info` | [RecordSpecIdInfo](#provenance.metadata.v1.RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification that was added or updated. |
+| `record_spec_id_info` | [RecordSpecIdInfo](#provenance-metadata-v1-RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification that was added or updated. |
-
+
### MsgWriteScopeRequest
MsgWriteScopeRequest is the request type for the Msg/WriteScope RPC method.
@@ -9419,7 +9913,7 @@ MsgWriteScopeRequest is the request type for the Msg/WriteScope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope` | [Scope](#provenance.metadata.v1.Scope) | | scope is the Scope you want added or updated. |
+| `scope` | [Scope](#provenance-metadata-v1-Scope) | | scope is the Scope you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
| `scope_uuid` | [string](#string) | | scope_uuid is an optional uuid string, e.g. "91978ba2-5f35-459a-86a7-feca1b0512e0" If provided, it will be used to generate the MetadataAddress for the scope which will override the scope_id in the provided scope. If not provided (or it is an empty string), nothing special happens. If there is a value in scope.scope_id that is different from the one created from this uuid, an error is returned. |
| `spec_uuid` | [string](#string) | | spec_uuid is an optional scope specification uuid string, e.g. "dc83ea70-eacd-40fe-9adf-1cf6148bf8a2" If provided, it will be used to generate the MetadataAddress for the scope specification which will override the specification_id in the provided scope. If not provided (or it is an empty string), nothing special happens. If there is a value in scope.specification_id that is different from the one created from this uuid, an error is returned. |
@@ -9430,7 +9924,7 @@ MsgWriteScopeRequest is the request type for the Msg/WriteScope RPC method.
-
+
### MsgWriteScopeResponse
MsgWriteScopeResponse is the response type for the Msg/WriteScope RPC method.
@@ -9438,14 +9932,14 @@ MsgWriteScopeResponse is the response type for the Msg/WriteScope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_id_info` | [ScopeIdInfo](#provenance.metadata.v1.ScopeIdInfo) | | scope_id_info contains information about the id/address of the scope that was added or updated. |
+| `scope_id_info` | [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo) | | scope_id_info contains information about the id/address of the scope that was added or updated. |
-
+
### MsgWriteScopeSpecificationRequest
MsgWriteScopeSpecificationRequest is the request type for the Msg/WriteScopeSpecification RPC method.
@@ -9453,7 +9947,7 @@ MsgWriteScopeSpecificationRequest is the request type for the Msg/WriteScopeSpec
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `specification` | [ScopeSpecification](#provenance.metadata.v1.ScopeSpecification) | | specification is the ScopeSpecification you want added or updated. |
+| `specification` | [ScopeSpecification](#provenance-metadata-v1-ScopeSpecification) | | specification is the ScopeSpecification you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
| `spec_uuid` | [string](#string) | | spec_uuid is an optional scope specification uuid string, e.g. "dc83ea70-eacd-40fe-9adf-1cf6148bf8a2" If provided, it will be used to generate the MetadataAddress for the scope specification which will override the specification_id in the provided specification. If not provided (or it is an empty string), nothing special happens. If there is a value in specification.specification_id that is different from the one created from this uuid, an error is returned. |
@@ -9462,7 +9956,7 @@ MsgWriteScopeSpecificationRequest is the request type for the Msg/WriteScopeSpec
-
+
### MsgWriteScopeSpecificationResponse
MsgWriteScopeSpecificationResponse is the response type for the Msg/WriteScopeSpecification RPC method.
@@ -9470,14 +9964,14 @@ MsgWriteScopeSpecificationResponse is the response type for the Msg/WriteScopeSp
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance.metadata.v1.ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification that was added or updated. |
+| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance-metadata-v1-ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification that was added or updated. |
-
+
### MsgWriteSessionRequest
MsgWriteSessionRequest is the request type for the Msg/WriteSession RPC method.
@@ -9485,9 +9979,9 @@ MsgWriteSessionRequest is the request type for the Msg/WriteSession RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `session` | [Session](#provenance.metadata.v1.Session) | | session is the Session you want added or updated. |
+| `session` | [Session](#provenance-metadata-v1-Session) | | session is the Session you want added or updated. |
| `signers` | [string](#string) | repeated | signers is the list of address of those signing this request. |
-| `session_id_components` | [SessionIdComponents](#provenance.metadata.v1.SessionIdComponents) | | SessionIDComponents is an optional (alternate) way of defining what the session_id should be in the provided session. If provided, it must have both a scope and session_uuid. Those components will be used to create the MetadataAddress for the session which will override the session_id in the provided session. If not provided (or all empty), nothing special happens. If there is a value in session.session_id that is different from the one created from these components, an error is returned. |
+| `session_id_components` | [SessionIdComponents](#provenance-metadata-v1-SessionIdComponents) | | SessionIDComponents is an optional (alternate) way of defining what the session_id should be in the provided session. If provided, it must have both a scope and session_uuid. Those components will be used to create the MetadataAddress for the session which will override the session_id in the provided session. If not provided (or all empty), nothing special happens. If there is a value in session.session_id that is different from the one created from these components, an error is returned. |
| `spec_uuid` | [string](#string) | | spec_uuid is an optional contract specification uuid string, e.g. "def6bc0a-c9dd-4874-948f-5206e6060a84" If provided, it will be used to generate the MetadataAddress for the contract specification which will override the specification_id in the provided session. If not provided (or it is an empty string), nothing special happens. If there is a value in session.specification_id that is different from the one created from this uuid, an error is returned. |
@@ -9495,7 +9989,7 @@ MsgWriteSessionRequest is the request type for the Msg/WriteSession RPC method.
-
+
### MsgWriteSessionResponse
MsgWriteSessionResponse is the response type for the Msg/WriteSession RPC method.
@@ -9503,14 +9997,14 @@ MsgWriteSessionResponse is the response type for the Msg/WriteSession RPC method
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `session_id_info` | [SessionIdInfo](#provenance.metadata.v1.SessionIdInfo) | | session_id_info contains information about the id/address of the session that was added or updated. |
+| `session_id_info` | [SessionIdInfo](#provenance-metadata-v1-SessionIdInfo) | | session_id_info contains information about the id/address of the session that was added or updated. |
-
+
### SessionIdComponents
SessionIDComponents contains fields for the components that make up a session id.
@@ -9533,259 +10027,404 @@ SessionIDComponents contains fields for the components that make up a session id
-
+
### Msg
Msg defines the Metadata Msg service.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `WriteScope` | [MsgWriteScopeRequest](#provenance.metadata.v1.MsgWriteScopeRequest) | [MsgWriteScopeResponse](#provenance.metadata.v1.MsgWriteScopeResponse) | WriteScope adds or updates a scope. | |
-| `DeleteScope` | [MsgDeleteScopeRequest](#provenance.metadata.v1.MsgDeleteScopeRequest) | [MsgDeleteScopeResponse](#provenance.metadata.v1.MsgDeleteScopeResponse) | DeleteScope deletes a scope and all associated Records, Sessions. | |
-| `AddScopeDataAccess` | [MsgAddScopeDataAccessRequest](#provenance.metadata.v1.MsgAddScopeDataAccessRequest) | [MsgAddScopeDataAccessResponse](#provenance.metadata.v1.MsgAddScopeDataAccessResponse) | AddScopeDataAccess adds data access AccAddress to scope | |
-| `DeleteScopeDataAccess` | [MsgDeleteScopeDataAccessRequest](#provenance.metadata.v1.MsgDeleteScopeDataAccessRequest) | [MsgDeleteScopeDataAccessResponse](#provenance.metadata.v1.MsgDeleteScopeDataAccessResponse) | DeleteScopeDataAccess removes data access AccAddress from scope | |
-| `AddScopeOwner` | [MsgAddScopeOwnerRequest](#provenance.metadata.v1.MsgAddScopeOwnerRequest) | [MsgAddScopeOwnerResponse](#provenance.metadata.v1.MsgAddScopeOwnerResponse) | AddScopeOwner adds new owner parties to a scope | |
-| `DeleteScopeOwner` | [MsgDeleteScopeOwnerRequest](#provenance.metadata.v1.MsgDeleteScopeOwnerRequest) | [MsgDeleteScopeOwnerResponse](#provenance.metadata.v1.MsgDeleteScopeOwnerResponse) | DeleteScopeOwner removes owner parties (by addresses) from a scope | |
-| `UpdateValueOwners` | [MsgUpdateValueOwnersRequest](#provenance.metadata.v1.MsgUpdateValueOwnersRequest) | [MsgUpdateValueOwnersResponse](#provenance.metadata.v1.MsgUpdateValueOwnersResponse) | UpdateValueOwners sets the value owner of one or more scopes. | |
-| `MigrateValueOwner` | [MsgMigrateValueOwnerRequest](#provenance.metadata.v1.MsgMigrateValueOwnerRequest) | [MsgMigrateValueOwnerResponse](#provenance.metadata.v1.MsgMigrateValueOwnerResponse) | MigrateValueOwner updates all scopes that have one value owner to have a another value owner. | |
-| `WriteSession` | [MsgWriteSessionRequest](#provenance.metadata.v1.MsgWriteSessionRequest) | [MsgWriteSessionResponse](#provenance.metadata.v1.MsgWriteSessionResponse) | WriteSession adds or updates a session context. | |
-| `WriteRecord` | [MsgWriteRecordRequest](#provenance.metadata.v1.MsgWriteRecordRequest) | [MsgWriteRecordResponse](#provenance.metadata.v1.MsgWriteRecordResponse) | WriteRecord adds or updates a record. | |
-| `DeleteRecord` | [MsgDeleteRecordRequest](#provenance.metadata.v1.MsgDeleteRecordRequest) | [MsgDeleteRecordResponse](#provenance.metadata.v1.MsgDeleteRecordResponse) | DeleteRecord deletes a record. | |
-| `WriteScopeSpecification` | [MsgWriteScopeSpecificationRequest](#provenance.metadata.v1.MsgWriteScopeSpecificationRequest) | [MsgWriteScopeSpecificationResponse](#provenance.metadata.v1.MsgWriteScopeSpecificationResponse) | WriteScopeSpecification adds or updates a scope specification. | |
-| `DeleteScopeSpecification` | [MsgDeleteScopeSpecificationRequest](#provenance.metadata.v1.MsgDeleteScopeSpecificationRequest) | [MsgDeleteScopeSpecificationResponse](#provenance.metadata.v1.MsgDeleteScopeSpecificationResponse) | DeleteScopeSpecification deletes a scope specification. | |
-| `WriteContractSpecification` | [MsgWriteContractSpecificationRequest](#provenance.metadata.v1.MsgWriteContractSpecificationRequest) | [MsgWriteContractSpecificationResponse](#provenance.metadata.v1.MsgWriteContractSpecificationResponse) | WriteContractSpecification adds or updates a contract specification. | |
-| `DeleteContractSpecification` | [MsgDeleteContractSpecificationRequest](#provenance.metadata.v1.MsgDeleteContractSpecificationRequest) | [MsgDeleteContractSpecificationResponse](#provenance.metadata.v1.MsgDeleteContractSpecificationResponse) | DeleteContractSpecification deletes a contract specification. | |
-| `AddContractSpecToScopeSpec` | [MsgAddContractSpecToScopeSpecRequest](#provenance.metadata.v1.MsgAddContractSpecToScopeSpecRequest) | [MsgAddContractSpecToScopeSpecResponse](#provenance.metadata.v1.MsgAddContractSpecToScopeSpecResponse) | AddContractSpecToScopeSpec adds contract specification to a scope specification. | |
-| `DeleteContractSpecFromScopeSpec` | [MsgDeleteContractSpecFromScopeSpecRequest](#provenance.metadata.v1.MsgDeleteContractSpecFromScopeSpecRequest) | [MsgDeleteContractSpecFromScopeSpecResponse](#provenance.metadata.v1.MsgDeleteContractSpecFromScopeSpecResponse) | DeleteContractSpecFromScopeSpec deletes a contract specification from a scope specification. | |
-| `WriteRecordSpecification` | [MsgWriteRecordSpecificationRequest](#provenance.metadata.v1.MsgWriteRecordSpecificationRequest) | [MsgWriteRecordSpecificationResponse](#provenance.metadata.v1.MsgWriteRecordSpecificationResponse) | WriteRecordSpecification adds or updates a record specification. | |
-| `DeleteRecordSpecification` | [MsgDeleteRecordSpecificationRequest](#provenance.metadata.v1.MsgDeleteRecordSpecificationRequest) | [MsgDeleteRecordSpecificationResponse](#provenance.metadata.v1.MsgDeleteRecordSpecificationResponse) | DeleteRecordSpecification deletes a record specification. | |
-| `BindOSLocator` | [MsgBindOSLocatorRequest](#provenance.metadata.v1.MsgBindOSLocatorRequest) | [MsgBindOSLocatorResponse](#provenance.metadata.v1.MsgBindOSLocatorResponse) | BindOSLocator binds an owner address to a uri. | |
-| `DeleteOSLocator` | [MsgDeleteOSLocatorRequest](#provenance.metadata.v1.MsgDeleteOSLocatorRequest) | [MsgDeleteOSLocatorResponse](#provenance.metadata.v1.MsgDeleteOSLocatorResponse) | DeleteOSLocator deletes an existing ObjectStoreLocator record. | |
-| `ModifyOSLocator` | [MsgModifyOSLocatorRequest](#provenance.metadata.v1.MsgModifyOSLocatorRequest) | [MsgModifyOSLocatorResponse](#provenance.metadata.v1.MsgModifyOSLocatorResponse) | ModifyOSLocator updates an ObjectStoreLocator record by the current owner. | |
-| `SetAccountData` | [MsgSetAccountDataRequest](#provenance.metadata.v1.MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance.metadata.v1.MsgSetAccountDataResponse) | SetAccountData associates some basic data with a metadata address. Currently, only scope ids are supported. | |
-| `AddNetAssetValues` | [MsgAddNetAssetValuesRequest](#provenance.metadata.v1.MsgAddNetAssetValuesRequest) | [MsgAddNetAssetValuesResponse](#provenance.metadata.v1.MsgAddNetAssetValuesResponse) | AddNetAssetValues set the net asset value for a scope | |
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `WriteScope` | [MsgWriteScopeRequest](#provenance-metadata-v1-MsgWriteScopeRequest) | [MsgWriteScopeResponse](#provenance-metadata-v1-MsgWriteScopeResponse) | WriteScope adds or updates a scope. |
+| `DeleteScope` | [MsgDeleteScopeRequest](#provenance-metadata-v1-MsgDeleteScopeRequest) | [MsgDeleteScopeResponse](#provenance-metadata-v1-MsgDeleteScopeResponse) | DeleteScope deletes a scope and all associated Records, Sessions. |
+| `AddScopeDataAccess` | [MsgAddScopeDataAccessRequest](#provenance-metadata-v1-MsgAddScopeDataAccessRequest) | [MsgAddScopeDataAccessResponse](#provenance-metadata-v1-MsgAddScopeDataAccessResponse) | AddScopeDataAccess adds data access AccAddress to scope |
+| `DeleteScopeDataAccess` | [MsgDeleteScopeDataAccessRequest](#provenance-metadata-v1-MsgDeleteScopeDataAccessRequest) | [MsgDeleteScopeDataAccessResponse](#provenance-metadata-v1-MsgDeleteScopeDataAccessResponse) | DeleteScopeDataAccess removes data access AccAddress from scope |
+| `AddScopeOwner` | [MsgAddScopeOwnerRequest](#provenance-metadata-v1-MsgAddScopeOwnerRequest) | [MsgAddScopeOwnerResponse](#provenance-metadata-v1-MsgAddScopeOwnerResponse) | AddScopeOwner adds new owner parties to a scope |
+| `DeleteScopeOwner` | [MsgDeleteScopeOwnerRequest](#provenance-metadata-v1-MsgDeleteScopeOwnerRequest) | [MsgDeleteScopeOwnerResponse](#provenance-metadata-v1-MsgDeleteScopeOwnerResponse) | DeleteScopeOwner removes owner parties (by addresses) from a scope |
+| `UpdateValueOwners` | [MsgUpdateValueOwnersRequest](#provenance-metadata-v1-MsgUpdateValueOwnersRequest) | [MsgUpdateValueOwnersResponse](#provenance-metadata-v1-MsgUpdateValueOwnersResponse) | UpdateValueOwners sets the value owner of one or more scopes. |
+| `MigrateValueOwner` | [MsgMigrateValueOwnerRequest](#provenance-metadata-v1-MsgMigrateValueOwnerRequest) | [MsgMigrateValueOwnerResponse](#provenance-metadata-v1-MsgMigrateValueOwnerResponse) | MigrateValueOwner updates all scopes that have one value owner to have a another value owner. |
+| `WriteSession` | [MsgWriteSessionRequest](#provenance-metadata-v1-MsgWriteSessionRequest) | [MsgWriteSessionResponse](#provenance-metadata-v1-MsgWriteSessionResponse) | WriteSession adds or updates a session context. |
+| `WriteRecord` | [MsgWriteRecordRequest](#provenance-metadata-v1-MsgWriteRecordRequest) | [MsgWriteRecordResponse](#provenance-metadata-v1-MsgWriteRecordResponse) | WriteRecord adds or updates a record. |
+| `DeleteRecord` | [MsgDeleteRecordRequest](#provenance-metadata-v1-MsgDeleteRecordRequest) | [MsgDeleteRecordResponse](#provenance-metadata-v1-MsgDeleteRecordResponse) | DeleteRecord deletes a record. |
+| `WriteScopeSpecification` | [MsgWriteScopeSpecificationRequest](#provenance-metadata-v1-MsgWriteScopeSpecificationRequest) | [MsgWriteScopeSpecificationResponse](#provenance-metadata-v1-MsgWriteScopeSpecificationResponse) | WriteScopeSpecification adds or updates a scope specification. |
+| `DeleteScopeSpecification` | [MsgDeleteScopeSpecificationRequest](#provenance-metadata-v1-MsgDeleteScopeSpecificationRequest) | [MsgDeleteScopeSpecificationResponse](#provenance-metadata-v1-MsgDeleteScopeSpecificationResponse) | DeleteScopeSpecification deletes a scope specification. |
+| `WriteContractSpecification` | [MsgWriteContractSpecificationRequest](#provenance-metadata-v1-MsgWriteContractSpecificationRequest) | [MsgWriteContractSpecificationResponse](#provenance-metadata-v1-MsgWriteContractSpecificationResponse) | WriteContractSpecification adds or updates a contract specification. |
+| `DeleteContractSpecification` | [MsgDeleteContractSpecificationRequest](#provenance-metadata-v1-MsgDeleteContractSpecificationRequest) | [MsgDeleteContractSpecificationResponse](#provenance-metadata-v1-MsgDeleteContractSpecificationResponse) | DeleteContractSpecification deletes a contract specification. |
+| `AddContractSpecToScopeSpec` | [MsgAddContractSpecToScopeSpecRequest](#provenance-metadata-v1-MsgAddContractSpecToScopeSpecRequest) | [MsgAddContractSpecToScopeSpecResponse](#provenance-metadata-v1-MsgAddContractSpecToScopeSpecResponse) | AddContractSpecToScopeSpec adds contract specification to a scope specification. |
+| `DeleteContractSpecFromScopeSpec` | [MsgDeleteContractSpecFromScopeSpecRequest](#provenance-metadata-v1-MsgDeleteContractSpecFromScopeSpecRequest) | [MsgDeleteContractSpecFromScopeSpecResponse](#provenance-metadata-v1-MsgDeleteContractSpecFromScopeSpecResponse) | DeleteContractSpecFromScopeSpec deletes a contract specification from a scope specification. |
+| `WriteRecordSpecification` | [MsgWriteRecordSpecificationRequest](#provenance-metadata-v1-MsgWriteRecordSpecificationRequest) | [MsgWriteRecordSpecificationResponse](#provenance-metadata-v1-MsgWriteRecordSpecificationResponse) | WriteRecordSpecification adds or updates a record specification. |
+| `DeleteRecordSpecification` | [MsgDeleteRecordSpecificationRequest](#provenance-metadata-v1-MsgDeleteRecordSpecificationRequest) | [MsgDeleteRecordSpecificationResponse](#provenance-metadata-v1-MsgDeleteRecordSpecificationResponse) | DeleteRecordSpecification deletes a record specification. |
+| `BindOSLocator` | [MsgBindOSLocatorRequest](#provenance-metadata-v1-MsgBindOSLocatorRequest) | [MsgBindOSLocatorResponse](#provenance-metadata-v1-MsgBindOSLocatorResponse) | BindOSLocator binds an owner address to a uri. |
+| `DeleteOSLocator` | [MsgDeleteOSLocatorRequest](#provenance-metadata-v1-MsgDeleteOSLocatorRequest) | [MsgDeleteOSLocatorResponse](#provenance-metadata-v1-MsgDeleteOSLocatorResponse) | DeleteOSLocator deletes an existing ObjectStoreLocator record. |
+| `ModifyOSLocator` | [MsgModifyOSLocatorRequest](#provenance-metadata-v1-MsgModifyOSLocatorRequest) | [MsgModifyOSLocatorResponse](#provenance-metadata-v1-MsgModifyOSLocatorResponse) | ModifyOSLocator updates an ObjectStoreLocator record by the current owner. |
+| `SetAccountData` | [MsgSetAccountDataRequest](#provenance-metadata-v1-MsgSetAccountDataRequest) | [MsgSetAccountDataResponse](#provenance-metadata-v1-MsgSetAccountDataResponse) | SetAccountData associates some basic data with a metadata address. Currently, only scope ids are supported. |
+| `AddNetAssetValues` | [MsgAddNetAssetValuesRequest](#provenance-metadata-v1-MsgAddNetAssetValuesRequest) | [MsgAddNetAssetValuesResponse](#provenance-metadata-v1-MsgAddNetAssetValuesResponse) | AddNetAssetValues set the net asset value for a scope |
-
+
Top
-## provenance/msgfees/v1/msgfees.proto
+## provenance/metadata/v1/events.proto
-
+
-### EventMsgFee
-EventMsgFee final event property for msg fee on type
+### EventContractSpecificationCreated
+EventContractSpecificationCreated is an event message indicating a contract specification has been created.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_type` | [string](#string) | | |
-| `count` | [string](#string) | | |
-| `total` | [string](#string) | | |
-| `recipient` | [string](#string) | | |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was created. |
-
+
-### EventMsgFees
-EventMsgFees event emitted with summary of msg fees
+### EventContractSpecificationDeleted
+EventContractSpecificationDeleted is an event message indicating a contract specification has been deleted.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_fees` | [EventMsgFee](#provenance.msgfees.v1.EventMsgFee) | repeated | |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was deleted. |
-
+
-### MsgFee
-MsgFee is the core of what gets stored on the blockchain
-it consists of four parts
-1. the msg type url, i.e. /cosmos.bank.v1beta1.MsgSend
-2. minimum additional fees(can be of any denom)
-3. optional recipient of fee based on `recipient_basis_points`
-4. if recipient is declared they will recieve the basis points of the fee (0-10,000)
+### EventContractSpecificationUpdated
+EventContractSpecificationUpdated is an event message indicating a contract specification has been updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_type_url` | [string](#string) | | |
-| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | additional_fee can pay in any Coin( basically a Denom and Amount, Amount can be zero) |
-| `recipient` | [string](#string) | | optional recipient address, the amount is split between recipient and fee module |
-| `recipient_basis_points` | [uint32](#uint32) | | optional split of funds between the recipient and fee module defaults to 50:50, |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the specification id of the contract specification that was updated. |
-
+
-### Params
-Params defines the set of params for the msgfees module.
+### EventOSLocatorCreated
+EventOSLocatorCreated is an event message indicating an object store locator has been created.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `floor_gas_price` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | floor_gas_price is the constant used to calculate fees when gas fees shares denom with msg fee.
+| `owner` | [string](#string) | | owner is the owner in the object store locator that was created. |
-Conversions: - x nhash/usd-mil = 1,000,000/x usd/hash - y usd/hash = 1,000,000/y nhash/usd-mil
-Examples: - 40,000,000 nhash/usd-mil = 1,000,000/40,000,000 usd/hash = $0.025/hash, - $0.040/hash = 1,000,000/0.040 nhash/usd-mil = 25,000,000 nhash/usd-mil |
-| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is the total nhash per usd mil for converting usd to nhash. |
-| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom usd is converted to. |
+
-
+### EventOSLocatorDeleted
+EventOSLocatorDeleted is an event message indicating an object store locator has been deleted.
-
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `owner` | [string](#string) | | owner is the owner in the object store locator that was deleted. |
-
-
-Top
-## provenance/msgfees/v1/genesis.proto
+
+### EventOSLocatorUpdated
+EventOSLocatorUpdated is an event message indicating an object store locator has been updated.
-
-### GenesisState
-GenesisState contains a set of msg fees, persisted from the store
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `owner` | [string](#string) | | owner is the owner in the object store locator that was updated. |
+
+
+
+
+
+
+
+
+### EventRecordCreated
+EventRecordCreated is an event message indicating a record has been created.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.msgfees.v1.Params) | | params defines all the parameters of the module. |
-| `msg_fees` | [MsgFee](#provenance.msgfees.v1.MsgFee) | repeated | msg_based_fees are the additional fees on specific tx msgs |
+| `record_addr` | [string](#string) | | record_addr is the bech32 address string of the record id that was created. |
+| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id this record belongs to. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belongs to. |
-
-
+
-
+### EventRecordDeleted
+EventRecordDeleted is an event message indicating a record has been deleted.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `record_addr` | [string](#string) | | record is the bech32 address string of the record id that was deleted. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belonged to. |
-
-Top
-## provenance/msgfees/v1/proposals.proto
-
+
-### AddMsgFeeProposal
-AddMsgFeeProposal defines a governance proposal to add additional msg based fee
+### EventRecordSpecificationCreated
+EventRecordSpecificationCreated is an event message indicating a record specification has been created.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | propsal title |
-| `description` | [string](#string) | | propsal description |
-| `msg_type_url` | [string](#string) | | type url of msg to add fee |
-| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | additional fee for msg type |
-| `recipient` | [string](#string) | | optional recipient to recieve basis points |
-| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
+| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was created. |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
-
+
-### RemoveMsgFeeProposal
-RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee
+### EventRecordSpecificationDeleted
+EventRecordSpecificationDeleted is an event message indicating a record specification has been deleted.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | propsal title |
-| `description` | [string](#string) | | propsal description |
-| `msg_type_url` | [string](#string) | | type url of msg fee to remove |
+| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was deleted. |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
-
+
-### UpdateConversionFeeDenomProposal
-UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom
+### EventRecordSpecificationUpdated
+EventRecordSpecificationUpdated is an event message indicating a record specification has been updated.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | proposal title |
-| `description` | [string](#string) | | proposal description |
-| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom that usd will be converted to |
+| `record_specification_addr` | [string](#string) | | record_specification_addr is the bech32 address string of the specification id of the record specification that was updated. |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the bech32 address string of the contract specification id this record specification belongs to. |
-
+
-### UpdateMsgFeeProposal
-UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee
+### EventRecordUpdated
+EventRecordUpdated is an event message indicating a record has been updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `record_addr` | [string](#string) | | record_addr is the bech32 address string of the record id that was updated. |
+| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id this record belongs to. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this record belongs to. |
+
+
+
+
+
+
+
+
+### EventScopeCreated
+EventScopeCreated is an event message indicating a scope has been created.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was created. |
+
+
+
+
+
+
+
+
+### EventScopeDeleted
+EventScopeDeleted is an event message indicating a scope has been deleted.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was deleted. |
+
+
+
+
+
+
+
+
+### EventScopeSpecificationCreated
+EventScopeSpecificationCreated is an event message indicating a scope specification has been created.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was created. |
+
+
+
+
+
+
+
+
+### EventScopeSpecificationDeleted
+EventScopeSpecificationDeleted is an event message indicating a scope specification has been deleted.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was deleted. |
+
+
+
+
+
+
+
+
+### EventScopeSpecificationUpdated
+EventScopeSpecificationUpdated is an event message indicating a scope specification has been updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_specification_addr` | [string](#string) | | scope_specification_addr is the bech32 address string of the specification id of the scope specification that was updated. |
+
+
+
+
+
+
+
+
+### EventScopeUpdated
+EventScopeUpdated is an event message indicating a scope has been updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id that was updated. |
+
+
+
+
+
+
+
+
+### EventSessionCreated
+EventSessionCreated is an event message indicating a session has been created.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was created. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
+
+
+
+
+
+
+
+
+### EventSessionDeleted
+EventSessionDeleted is an event message indicating a session has been deleted.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was deleted. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
+
+
+
+
+
+
+
+
+### EventSessionUpdated
+EventSessionUpdated is an event message indicating a session has been updated.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `session_addr` | [string](#string) | | session_addr is the bech32 address string of the session id that was updated. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 address string of the scope id this session belongs to. |
+
+
+
+
+
+
+
+
+### EventSetNetAssetValue
+EventSetNetAssetValue event emitted when Net Asset Value for a scope is update or added
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | propsal title |
-| `description` | [string](#string) | | propsal description |
-| `msg_type_url` | [string](#string) | | type url of msg to update fee |
-| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | additional fee for msg type |
-| `recipient` | [string](#string) | | optional recipient to recieve basis points |
-| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
+| `scope_id` | [string](#string) | | |
+| `price` | [string](#string) | | |
+| `source` | [string](#string) | | |
+| `volume` | [string](#string) | | |
-
+
-### UpdateNhashPerUsdMilProposal
-UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param
+### EventTxCompleted
+EventTxCompleted is an event message indicating that a TX has completed.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | proposal title |
-| `description` | [string](#string) | | proposal description |
-| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is number of nhash per usd mil |
+| `module` | [string](#string) | | module is the module the TX belongs to. |
+| `endpoint` | [string](#string) | | endpoint is the rpc endpoint that was just completed. |
+| `signers` | [string](#string) | repeated | signers are the bech32 address strings of the signers of this TX. |
@@ -9801,1173 +10440,1290 @@ UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash p
-
+
Top
-## provenance/msgfees/v1/query.proto
+## provenance/metadata/v1/specification.proto
-
+
-### CalculateTxFeesRequest
-CalculateTxFeesRequest is the request type for the Query RPC method.
+### ContractSpecification
+ContractSpecification defines the required parties, resources, conditions, and consideration outputs for a contract
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `tx_bytes` | [bytes](#bytes) | | tx_bytes is the transaction to simulate. |
-| `default_base_denom` | [string](#string) | | default_base_denom is used to set the denom used for gas fees if not set it will default to nhash. |
-| `gas_adjustment` | [float](#float) | | gas_adjustment is the adjustment factor to be multiplied against the estimate returned by the tx simulation |
+| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
+| `description` | [Description](#provenance-metadata-v1-Description) | | Description information for this contract specification |
+| `owner_addresses` | [string](#string) | repeated | Address of the account that owns this specificaiton |
+| `parties_involved` | [PartyType](#provenance-metadata-v1-PartyType) | repeated | a list of party roles that must be fullfilled when signing a transaction for this contract specification |
+| `resource_id` | [bytes](#bytes) | | the address of a record on chain that represents this contract |
+| `hash` | [string](#string) | | the hash of contract binary (off-chain instance) |
+| `class_name` | [string](#string) | | name of the class/type of this contract executable |
-
+
-### CalculateTxFeesResponse
-CalculateTxFeesResponse is the response type for the Query RPC method.
+### Description
+Description holds general information that is handy to associate with a structure.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `additional_fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | additional_fees are the amount of coins to be for addition msg fees |
-| `total_fees` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | total_fees are the total amount of fees needed for the transactions (msg fees + gas fee) note: the gas fee is calculated with the floor gas price module param. |
-| `estimated_gas` | [uint64](#uint64) | | estimated_gas is the amount of gas needed for the transaction |
+| `name` | [string](#string) | | A Name for this thing. |
+| `description` | [string](#string) | | A description of this thing. |
+| `website_url` | [string](#string) | | URL to find even more info. |
+| `icon_url` | [string](#string) | | URL of an icon. |
-
+
-### QueryAllMsgFeesRequest
-QueryAllMsgFeesRequest queries all Msg which have fees associated with them.
+### InputSpecification
+InputSpecification defines a name, type_name, and source reference (either on or off chain) to define an input
+parameter
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `name` | [string](#string) | | name for this input |
+| `type_name` | [string](#string) | | a type_name (typically a proto name or class_name) |
+| `record_id` | [bytes](#bytes) | | the address of a record on chain (For Established Records) |
+| `hash` | [string](#string) | | the hash of an off-chain piece of information (For Proposed Records) |
-
+
-### QueryAllMsgFeesResponse
-response for querying all msg's with fees associated with them
+### RecordSpecification
+RecordSpecification defines the specification for a Record including allowed/required inputs/outputs
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_fees` | [MsgFee](#provenance.msgfees.v1.MsgFee) | repeated | |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
-
+| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
+| `name` | [string](#string) | | Name of Record that will be created when this specification is used |
+| `inputs` | [InputSpecification](#provenance-metadata-v1-InputSpecification) | repeated | A set of inputs that must be satisified to apply this RecordSpecification and create a Record |
+| `type_name` | [string](#string) | | A type name for data associated with this record (typically a class or proto name) |
+| `result_type` | [DefinitionType](#provenance-metadata-v1-DefinitionType) | | Type of result for this record specification (must be RECORD or RECORD_LIST) |
+| `responsible_parties` | [PartyType](#provenance-metadata-v1-PartyType) | repeated | Type of party responsible for this record |
-
-### QueryParamsRequest
-QueryParamsRequest is the request type for the Query/Params RPC method.
+
+### ScopeSpecification
+ScopeSpecification defines the required parties, resources, conditions, and consideration outputs for a contract
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `specification_id` | [bytes](#bytes) | | unique identifier for this specification on chain |
+| `description` | [Description](#provenance-metadata-v1-Description) | | General information about this scope specification. |
+| `owner_addresses` | [string](#string) | repeated | Addresses of the owners of this scope specification. |
+| `parties_involved` | [PartyType](#provenance-metadata-v1-PartyType) | repeated | A list of parties that must be present on a scope (and their associated roles) |
+| `contract_spec_ids` | [bytes](#bytes) | repeated | A list of contract specification ids allowed for a scope based on this specification. |
-
-### QueryParamsResponse
-QueryParamsResponse is the response type for the Query/Params RPC method.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.msgfees.v1.Params) | | params defines the parameters of the module. |
+
+### DefinitionType
+DefinitionType indicates the required definition type for this value
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `DEFINITION_TYPE_UNSPECIFIED` | `0` | DEFINITION_TYPE_UNSPECIFIED indicates an unknown/invalid value |
+| `DEFINITION_TYPE_PROPOSED` | `1` | DEFINITION_TYPE_PROPOSED indicates a proposed value is used here (a record that is not on-chain) |
+| `DEFINITION_TYPE_RECORD` | `2` | DEFINITION_TYPE_RECORD indicates the value must be a reference to a record on chain |
+| `DEFINITION_TYPE_RECORD_LIST` | `3` | DEFINITION_TYPE_RECORD_LIST indicates the value maybe a reference to a collection of values on chain having the same name |
-
-
+
-
+### PartyType
+PartyType are the different roles parties on a contract may use
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `PARTY_TYPE_UNSPECIFIED` | `0` | PARTY_TYPE_UNSPECIFIED is an error condition |
+| `PARTY_TYPE_ORIGINATOR` | `1` | PARTY_TYPE_ORIGINATOR is an asset originator |
+| `PARTY_TYPE_SERVICER` | `2` | PARTY_TYPE_SERVICER provides debt servicing functions |
+| `PARTY_TYPE_INVESTOR` | `3` | PARTY_TYPE_INVESTOR is a generic investor |
+| `PARTY_TYPE_CUSTODIAN` | `4` | PARTY_TYPE_CUSTODIAN is an entity that provides custodian services for assets |
+| `PARTY_TYPE_OWNER` | `5` | PARTY_TYPE_OWNER indicates this party is an owner of the item |
+| `PARTY_TYPE_AFFILIATE` | `6` | PARTY_TYPE_AFFILIATE is a party with an affiliate agreement |
+| `PARTY_TYPE_OMNIBUS` | `7` | PARTY_TYPE_OMNIBUS is a special type of party that controls an omnibus bank account |
+| `PARTY_TYPE_PROVENANCE` | `8` | PARTY_TYPE_PROVENANCE is used to indicate this party represents the blockchain or a smart contract action |
+| `PARTY_TYPE_CONTROLLER` | `10` | PARTY_TYPE_CONTROLLER is an entity which controls a specific asset on chain (ie enote) |
+| `PARTY_TYPE_VALIDATOR` | `11` | PARTY_TYPE_VALIDATOR is an entity which validates given assets on chain |
-
-### Query
-Query defines the gRPC querier service for marker module.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [QueryParamsRequest](#provenance.msgfees.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.msgfees.v1.QueryParamsResponse) | Params queries the parameters for x/msgfees | GET|/provenance/msgfees/v1/params|
-| `QueryAllMsgFees` | [QueryAllMsgFeesRequest](#provenance.msgfees.v1.QueryAllMsgFeesRequest) | [QueryAllMsgFeesResponse](#provenance.msgfees.v1.QueryAllMsgFeesResponse) | Query all Msgs which have fees associated with them. | GET|/provenance/msgfees/v1/all|
-| `CalculateTxFees` | [CalculateTxFeesRequest](#provenance.msgfees.v1.CalculateTxFeesRequest) | [CalculateTxFeesResponse](#provenance.msgfees.v1.CalculateTxFeesResponse) | CalculateTxFees simulates executing a transaction for estimating gas usage and additional fees. | POST|/provenance/tx/v1/calculate_msg_based_fee|
+
-
+
Top
-## provenance/msgfees/v1/tx.proto
+## provenance/metadata/v1/scope.proto
-
+
-### MsgAddMsgFeeProposalRequest
-AddMsgFeeProposal defines a governance proposal to add additional msg based fee
+### AuditFields
+AuditFields capture information about the last account to make modifications and when they were made
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_type_url` | [string](#string) | | type url of msg to add fee |
-| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | additional fee for msg type |
-| `recipient` | [string](#string) | | optional recipient to receive basis points |
-| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
-| `authority` | [string](#string) | | the signing authority for the proposal |
+| `created_date` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | the date/time when this entry was created |
+| `created_by` | [string](#string) | | the address of the account that created this record |
+| `updated_date` | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | the date/time when this entry was last updated |
+| `updated_by` | [string](#string) | | the address of the account that modified this record |
+| `version` | [uint32](#uint32) | | an optional version number that is incremented with each update |
+| `message` | [string](#string) | | an optional message associated with the creation/update event |
-
+
-### MsgAddMsgFeeProposalResponse
-MsgAddMsgFeeProposalResponse defines the Msg/AddMsgFeeProposal response type
+### NetAssetValue
+NetAssetValue defines a scope's net asset value
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `price` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | | price is the complete value of the asset's volume |
+| `updated_block_height` | [uint64](#uint64) | | updated_block_height is the block height of last update |
+| `volume` | [uint64](#uint64) | | volume is the number of scope instances that were purchased for the price Typically this will be null (equivalent to one) or one. The only reason this would be more than one is for cases where the precision of the price denom is insufficient to represent the actual price |
-
-### MsgAssessCustomMsgFeeRequest
-MsgAssessCustomMsgFeeRequest defines an sdk.Msg type
+
+
+
+### Party
+A Party is an address with/in a given role associated with a contract
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | optional short name for custom msg fee, this will be emitted as a property of the event |
-| `amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | amount of additional fee that must be paid |
-| `recipient` | [string](#string) | | optional recipient address, the basis points amount is sent to the recipient |
-| `from` | [string](#string) | | the signer of the msg |
-| `recipient_basis_points` | [string](#string) | | optional basis points 0 - 10,000 for recipient defaults to 10,000 |
+| `address` | [string](#string) | | address of the account (on chain) |
+| `role` | [PartyType](#provenance-metadata-v1-PartyType) | | a role for this account within the context of the processes used |
+| `optional` | [bool](#bool) | | whether this party's signature is optional |
-
+
+
+### Process
+Process contains information used to uniquely identify what was used to generate this record
-### MsgAssessCustomMsgFeeResponse
-MsgAssessCustomMsgFeeResponse defines the Msg/AssessCustomMsgFeee response type.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `address` | [string](#string) | | the address of a smart contract used for this process |
+| `hash` | [string](#string) | | the hash of an off-chain process used |
+| `name` | [string](#string) | | a name associated with the process (type_name, classname or smart contract common name) |
+| `method` | [string](#string) | | method is a name or reference to a specific operation (method) within a class/contract that was invoked |
-
-### MsgRemoveMsgFeeProposalRequest
-RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee
+
+
+### Record
+A record (of fact) is attached to a session or each consideration output from a contract
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_type_url` | [string](#string) | | type url of msg fee to remove |
-| `authority` | [string](#string) | | the signing authority for the proposal |
+| `name` | [string](#string) | | name/identifier for this record. Value must be unique within the scope. Also known as a Fact name |
+| `session_id` | [bytes](#bytes) | | id of the session context that was used to create this record (use with filtered kvprefix iterator) |
+| `process` | [Process](#provenance-metadata-v1-Process) | | process contain information used to uniquely identify an execution on or off chain that generated this record |
+| `inputs` | [RecordInput](#provenance-metadata-v1-RecordInput) | repeated | inputs used with the process to achieve the output on this record |
+| `outputs` | [RecordOutput](#provenance-metadata-v1-RecordOutput) | repeated | output(s) is the results of executing the process on the given process indicated in this record |
+| `specification_id` | [bytes](#bytes) | | specification_id is the id of the record specification that was used to create this record. |
-
+
-### MsgRemoveMsgFeeProposalResponse
-MsgRemoveMsgFeeProposalResponse defines the Msg/RemoveMsgFeeProposal response type
+### RecordInput
+Tracks the inputs used to establish this record
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `name` | [string](#string) | | Name value included to link back to the definition spec. |
+| `record_id` | [bytes](#bytes) | | the address of a record on chain (For Established Records) |
+| `hash` | [string](#string) | | the hash of an off-chain piece of information (For Proposed Records) |
+| `type_name` | [string](#string) | | from proposed fact structure to unmarshal |
+| `status` | [RecordInputStatus](#provenance-metadata-v1-RecordInputStatus) | | Indicates if this input was a recorded fact on chain or just a given hashed input |
-
+
-### MsgUpdateConversionFeeDenomProposalRequest
-UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom
+### RecordOutput
+RecordOutput encapsulates the output of a process recorded on chain
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `conversion_fee_denom` | [string](#string) | | conversion_fee_denom is the denom that usd will be converted to |
-| `authority` | [string](#string) | | the signing authority for the proposal |
+| `hash` | [string](#string) | | Hash of the data output that was output/generated for this record |
+| `status` | [ResultStatus](#provenance-metadata-v1-ResultStatus) | | Status of the process execution associated with this output indicating success,failure, or pending |
-
+
-### MsgUpdateConversionFeeDenomProposalResponse
-MsgUpdateConversionFeeDenomProposalResponse defines the Msg/UpdateConversionFeeDenomProposal response type
+### Scope
+Scope defines a root reference for a collection of records owned by one or more parties.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_id` | [bytes](#bytes) | | Unique ID for this scope. Implements sdk.Address interface for use where addresses are required in Cosmos |
+| `specification_id` | [bytes](#bytes) | | the scope specification that contains the specifications for data elements allowed within this scope |
+| `owners` | [Party](#provenance-metadata-v1-Party) | repeated | These parties represent top level owners of the records within. These parties must sign any requests that modify the data within the scope. These addresses are in union with parties listed on the sessions. |
+| `data_access` | [string](#string) | repeated | Addresses in this list are authorized to receive off-chain data associated with this scope. |
+| `value_owner_address` | [string](#string) | | An address that controls the value associated with this scope. Standard blockchain accounts and marker accounts are supported for this value. This attribute may only be changed by the entity indicated once it is set. |
+| `require_party_rollup` | [bool](#bool) | | Whether all parties in this scope and its sessions must be present in this scope's owners field. This also enables use of optional=true scope owners and session parties. |
-
-### MsgUpdateMsgFeeProposalRequest
-UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee
+
+
+
+### Session
+Session defines an execution context against a specific specification instance.
+The context will have a specification and set of parties involved.
+
+NOTE: When there are no more Records within a Scope that reference a Session, the Session is removed.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `msg_type_url` | [string](#string) | | type url of msg to update fee |
-| `additional_fee` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | additional fee for msg type |
-| `recipient` | [string](#string) | | optional recipient to recieve basis points |
-| `recipient_basis_points` | [string](#string) | | basis points to use when recipient is present (1 - 10,000) |
-| `authority` | [string](#string) | | the signing authority for the proposal |
+| `session_id` | [bytes](#bytes) | | |
+| `specification_id` | [bytes](#bytes) | | unique id of the contract specification that was used to create this session. |
+| `parties` | [Party](#provenance-metadata-v1-Party) | repeated | parties is the set of identities that signed this contract |
+| `name` | [string](#string) | | name to associate with this session execution context, typically classname |
+| `context` | [bytes](#bytes) | | context is a field for storing client specific data associated with a session. |
+| `audit` | [AuditFields](#provenance-metadata-v1-AuditFields) | | Created by, updated by, timestamps, version number, and related info. |
+
+
-
+
-### MsgUpdateMsgFeeProposalResponse
-MsgUpdateMsgFeeProposalResponse defines the Msg/RemoveMsgFeeProposal response type
+### RecordInputStatus
+A set of types for inputs on a record (of fact)
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `RECORD_INPUT_STATUS_UNSPECIFIED` | `0` | RECORD_INPUT_STATUS_UNSPECIFIED indicates an invalid/unknown input type |
+| `RECORD_INPUT_STATUS_PROPOSED` | `1` | RECORD_INPUT_STATUS_PROPOSED indicates this input was an arbitrary piece of data that was hashed |
+| `RECORD_INPUT_STATUS_RECORD` | `2` | RECORD_INPUT_STATUS_RECORD indicates this input is a reference to a previously recorded fact on blockchain |
+
+### ResultStatus
+ResultStatus indicates the various states of execution of a record
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `RESULT_STATUS_UNSPECIFIED` | `0` | RESULT_STATUS_UNSPECIFIED indicates an unset condition |
+| `RESULT_STATUS_PASS` | `1` | RESULT_STATUS_PASS indicates the execution was successful |
+| `RESULT_STATUS_SKIP` | `2` | RESULT_STATUS_SKIP indicates condition/consideration was skipped due to missing inputs or delayed execution |
+| `RESULT_STATUS_FAIL` | `3` | RESULT_STATUS_FAIL indicates the execution of the condition/consideration failed. |
-
+
-### MsgUpdateNhashPerUsdMilProposalRequest
-UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param
+
+
+
+
+
+
+
+Top
+
+## provenance/metadata/v1/query.proto
+
+
+
+
+
+### AccountDataRequest
+AccountDataRequest is the request type for the Query/AccountData RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `nhash_per_usd_mil` | [uint64](#uint64) | | nhash_per_usd_mil is number of nhash per usd mil |
-| `authority` | [string](#string) | | the signing authority for the proposal |
+| `metadata_addr` | [bytes](#bytes) | | The metadata address to look up. Currently, only scope ids are supported. |
-
+
-### MsgUpdateNhashPerUsdMilProposalResponse
-MsgUpdateNhashPerUsdMilProposalResponse defines the Msg/UpdateNhashPerUsdMilProposal response type
+### AccountDataResponse
+AccountDataResponse is the response type for the Query/AccountData RPC method.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `value` | [string](#string) | | The accountdata for the requested metadata address. |
-
-
-
+
-
+### ContractSpecificationRequest
+ContractSpecificationRequest is the request type for the Query/ContractSpecification RPC method.
-### Msg
-Msg defines the msgfees Msg service.
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `AssessCustomMsgFee` | [MsgAssessCustomMsgFeeRequest](#provenance.msgfees.v1.MsgAssessCustomMsgFeeRequest) | [MsgAssessCustomMsgFeeResponse](#provenance.msgfees.v1.MsgAssessCustomMsgFeeResponse) | AssessCustomMsgFee endpoint executes the additional fee charges. This will only emit the event and not persist it to the keeper. Fees are handled with the custom msg fee handlers Use Case: smart contracts will be able to charge additional fees and direct partial funds to specified recipient for executing contracts | |
-| `AddMsgFeeProposal` | [MsgAddMsgFeeProposalRequest](#provenance.msgfees.v1.MsgAddMsgFeeProposalRequest) | [MsgAddMsgFeeProposalResponse](#provenance.msgfees.v1.MsgAddMsgFeeProposalResponse) | AddMsgFeeProposal defines a governance proposal to add additional msg based fee | |
-| `UpdateMsgFeeProposal` | [MsgUpdateMsgFeeProposalRequest](#provenance.msgfees.v1.MsgUpdateMsgFeeProposalRequest) | [MsgUpdateMsgFeeProposalResponse](#provenance.msgfees.v1.MsgUpdateMsgFeeProposalResponse) | UpdateMsgFeeProposal defines a governance proposal to update a current msg based fee | |
-| `RemoveMsgFeeProposal` | [MsgRemoveMsgFeeProposalRequest](#provenance.msgfees.v1.MsgRemoveMsgFeeProposalRequest) | [MsgRemoveMsgFeeProposalResponse](#provenance.msgfees.v1.MsgRemoveMsgFeeProposalResponse) | RemoveMsgFeeProposal defines a governance proposal to delete a current msg based fee | |
-| `UpdateNhashPerUsdMilProposal` | [MsgUpdateNhashPerUsdMilProposalRequest](#provenance.msgfees.v1.MsgUpdateNhashPerUsdMilProposalRequest) | [MsgUpdateNhashPerUsdMilProposalResponse](#provenance.msgfees.v1.MsgUpdateNhashPerUsdMilProposalResponse) | UpdateNhashPerUsdMilProposal defines a governance proposal to update the nhash per usd mil param | |
-| `UpdateConversionFeeDenomProposal` | [MsgUpdateConversionFeeDenomProposalRequest](#provenance.msgfees.v1.MsgUpdateConversionFeeDenomProposalRequest) | [MsgUpdateConversionFeeDenomProposalResponse](#provenance.msgfees.v1.MsgUpdateConversionFeeDenomProposalResponse) | UpdateConversionFeeDenomProposal defines a governance proposal to update the msg fee conversion denom | |
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
+| `include_record_specs` | [bool](#bool) | | include_record_specs is a flag for whether to include the the record specifications of this contract specification in the response. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+
+
+
+
+
+
+
+
+### ContractSpecificationResponse
+ContractSpecificationResponse is the response type for the Query/ContractSpecification RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `contract_specification` | [ContractSpecificationWrapper](#provenance-metadata-v1-ContractSpecificationWrapper) | | contract_specification is the wrapped contract specification. |
+| `record_specifications` | [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper) | repeated | record_specifications is any number or wrapped record specifications associated with this contract_specification (if requested). |
+| `request` | [ContractSpecificationRequest](#provenance-metadata-v1-ContractSpecificationRequest) | | request is a copy of the request that generated these results. |
-
-Top
-## provenance/name/v1/name.proto
-
+
-### CreateRootNameProposal
-CreateRootNameProposal details a proposal to create a new root name
-that is controlled by a given owner and optionally restricted to the owner
-for the sole creation of sub names.
+### ContractSpecificationWrapper
+ContractSpecificationWrapper contains a single contract specification and some extra identifiers for it.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | proposal title |
-| `description` | [string](#string) | | proposal description |
-| `name` | [string](#string) | | the bound name |
-| `owner` | [string](#string) | | the address the name will resolve to |
-| `restricted` | [bool](#bool) | | a flag that indicates if an owner signature is required to add sub-names |
+| `specification` | [ContractSpecification](#provenance-metadata-v1-ContractSpecification) | | specification is the on-chain contract specification message. |
+| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification. |
-
+
-### EventNameBound
-Event emitted when name is bound.
+### ContractSpecificationsAllRequest
+ContractSpecificationsAllRequest is the request type for the Query/ContractSpecificationsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `name` | [string](#string) | | |
-| `restricted` | [bool](#bool) | | |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### EventNameUnbound
-Event emitted when name is unbound.
+### ContractSpecificationsAllResponse
+ContractSpecificationsAllResponse is the response type for the Query/ContractSpecificationsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `name` | [string](#string) | | |
-| `restricted` | [bool](#bool) | | |
+| `contract_specifications` | [ContractSpecificationWrapper](#provenance-metadata-v1-ContractSpecificationWrapper) | repeated | contract_specifications are the wrapped contract specifications. |
+| `request` | [ContractSpecificationsAllRequest](#provenance-metadata-v1-ContractSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
+
-### EventNameUpdate
-Event emitted when name is updated.
+### GetByAddrRequest
+GetByAddrRequest is the request type for the Query/GetByAddr RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | |
-| `name` | [string](#string) | | |
-| `restricted` | [bool](#bool) | | |
+| `addrs` | [string](#string) | repeated | ids are the metadata addresses of the things to look up. |
-
+
-### NameRecord
-NameRecord is a structure used to bind ownership of a name hierarchy to a collection of addresses
+### GetByAddrResponse
+GetByAddrResponse is the response type for the Query/GetByAddr RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | the bound name |
-| `address` | [string](#string) | | the address the name resolved to |
-| `restricted` | [bool](#bool) | | whether owner signature is required to add sub-names |
+| `scopes` | [Scope](#provenance-metadata-v1-Scope) | repeated | scopes contains any scopes that were requested and found. |
+| `sessions` | [Session](#provenance-metadata-v1-Session) | repeated | sessions contains any sessions that were requested and found. |
+| `records` | [Record](#provenance-metadata-v1-Record) | repeated | records contains any records that were requested and found. |
+| `scope_specs` | [ScopeSpecification](#provenance-metadata-v1-ScopeSpecification) | repeated | scope_specs contains any scope specifications that were requested and found. |
+| `contract_specs` | [ContractSpecification](#provenance-metadata-v1-ContractSpecification) | repeated | contract_specs contains any contract specifications that were requested and found. |
+| `record_specs` | [RecordSpecification](#provenance-metadata-v1-RecordSpecification) | repeated | record_specs contains any record specifications that were requested and found. |
+| `not_found` | [string](#string) | repeated | not_found contains any addrs requested but not found. |
-
+
-### Params
-Params defines the set of params for the name module.
+### OSAllLocatorsRequest
+OSAllLocatorsRequest is the request type for the Query/OSAllLocators RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `max_segment_length` | [uint32](#uint32) | | maximum length of name segment to allow |
-| `min_segment_length` | [uint32](#uint32) | | minimum length of name segment to allow |
-| `max_name_levels` | [uint32](#uint32) | | maximum number of name segments to allow. Example: `foo.bar.baz` would be 3 |
-| `allow_unrestricted_names` | [bool](#bool) | | determines if unrestricted name keys are allowed or not |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
-
+
-
+### OSAllLocatorsResponse
+OSAllLocatorsResponse is the response type for the Query/OSAllLocators RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `locators` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | repeated | |
+| `request` | [OSAllLocatorsRequest](#provenance-metadata-v1-OSAllLocatorsRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
-Top
-## provenance/name/v1/genesis.proto
-
+
-### GenesisState
-GenesisState defines the name module's genesis state.
+### OSLocatorParamsRequest
+OSLocatorParamsRequest is the request type for the Query/OSLocatorParams RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.name.v1.Params) | | params defines all the parameters of the module. |
-| `bindings` | [NameRecord](#provenance.name.v1.NameRecord) | repeated | bindings defines all the name records present at genesis |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
-
+
-
+### OSLocatorParamsResponse
+OSLocatorParamsResponse is the response type for the Query/OSLocatorParams RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `params` | [OSLocatorParams](#provenance-metadata-v1-OSLocatorParams) | | params defines the parameters of the module. |
+| `request` | [OSLocatorParamsRequest](#provenance-metadata-v1-OSLocatorParamsRequest) | | request is a copy of the request that generated these results. |
-
-Top
-## provenance/name/v1/query.proto
-
+
-### QueryParamsRequest
-QueryParamsRequest is the request type for the Query/Params RPC method.
+### OSLocatorRequest
+OSLocatorRequest is the request type for the Query/OSLocator RPC method.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `owner` | [string](#string) | | |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### QueryParamsResponse
-QueryParamsResponse is the response type for the Query/Params RPC method.
+### OSLocatorResponse
+OSLocatorResponse is the response type for the Query/OSLocator RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `params` | [Params](#provenance.name.v1.Params) | | params defines the parameters of the module. |
+| `locator` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | | |
+| `request` | [OSLocatorRequest](#provenance-metadata-v1-OSLocatorRequest) | | request is a copy of the request that generated these results. |
-
+
-### QueryResolveRequest
-QueryResolveRequest is the request type for the Query/Resolve method.
+### OSLocatorsByScopeRequest
+OSLocatorsByScopeRequest is the request type for the Query/OSLocatorsByScope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | name to resolve the address for |
+| `scope_id` | [string](#string) | | |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### QueryResolveResponse
-QueryResolveResponse is the response type for the Query/Resolve method.
+### OSLocatorsByScopeResponse
+OSLocatorsByScopeResponse is the response type for the Query/OSLocatorsByScope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | a string containing the address the name resolves to |
-| `restricted` | [bool](#bool) | | Whether owner signature is required to add sub-names. |
+| `locators` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | repeated | |
+| `request` | [OSLocatorsByScopeRequest](#provenance-metadata-v1-OSLocatorsByScopeRequest) | | request is a copy of the request that generated these results. |
-
+
-### QueryReverseLookupRequest
-QueryReverseLookupRequest is the request type for the Query/ReverseLookup method.
+### OSLocatorsByURIRequest
+OSLocatorsByURIRequest is the request type for the Query/OSLocatorsByURI RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | address to find name records for |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `uri` | [string](#string) | | |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### QueryReverseLookupResponse
-QueryReverseLookupResponse is the response type for the Query/Resolve method.
+### OSLocatorsByURIResponse
+OSLocatorsByURIResponse is the response type for the Query/OSLocatorsByURI RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | repeated | an array of names bound against a given address |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the request. |
+| `locators` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | repeated | |
+| `request` | [OSLocatorsByURIRequest](#provenance-metadata-v1-OSLocatorsByURIRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
-
-
-
-
-
-
-
-### Query
-Query defines the gRPC querier service for distribution module.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `Params` | [QueryParamsRequest](#provenance.name.v1.QueryParamsRequest) | [QueryParamsResponse](#provenance.name.v1.QueryParamsResponse) | Params queries params of the name module. | GET|/provenance/name/v1/params|
-| `Resolve` | [QueryResolveRequest](#provenance.name.v1.QueryResolveRequest) | [QueryResolveResponse](#provenance.name.v1.QueryResolveResponse) | Resolve queries for the address associated with a given name | GET|/provenance/name/v1/resolve/{name}|
-| `ReverseLookup` | [QueryReverseLookupRequest](#provenance.name.v1.QueryReverseLookupRequest) | [QueryReverseLookupResponse](#provenance.name.v1.QueryReverseLookupResponse) | ReverseLookup queries for all names bound against a given address | GET|/provenance/name/v1/lookup/{address}|
+### OwnershipRequest
+OwnershipRequest is the request type for the Query/Ownership RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `address` | [string](#string) | | |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
-Top
-## provenance/name/v1/tx.proto
-
+
-### MsgBindNameRequest
-MsgBindNameRequest defines an sdk.Msg type that is used to add an address/name binding under an optional parent name.
-The record may optionally be restricted to prevent additional names from being added under this one without the
-owner signing the request.
+### OwnershipResponse
+OwnershipResponse is the response type for the Query/Ownership RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `parent` | [NameRecord](#provenance.name.v1.NameRecord) | | The parent record to bind this name under. |
-| `record` | [NameRecord](#provenance.name.v1.NameRecord) | | The name record to bind under the parent |
+| `scope_uuids` | [string](#string) | repeated | A list of scope ids (uuid) associated with the given address. |
+| `request` | [OwnershipRequest](#provenance-metadata-v1-OwnershipRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
+
-### MsgBindNameResponse
-MsgBindNameResponse defines the Msg/BindName response type.
+### QueryParamsRequest
+QueryParamsRequest is the request type for the Query/Params RPC method.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### MsgCreateRootNameRequest
-MsgCreateRootNameRequest defines an sdk.Msg type to create a new root name
-that is controlled by a given owner and optionally restricted to the owner
-for the sole creation of sub names.
+### QueryParamsResponse
+QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | The signing authority for the request |
-| `record` | [NameRecord](#provenance.name.v1.NameRecord) | | NameRecord is a structure used to bind ownership of a name hierarchy to a collection of addresses |
+| `params` | [Params](#provenance-metadata-v1-Params) | | params defines the parameters of the module. |
+| `request` | [QueryParamsRequest](#provenance-metadata-v1-QueryParamsRequest) | | request is a copy of the request that generated these results. |
-
+
-### MsgCreateRootNameResponse
-MsgCreateRootNameResponse defines Msg/CreateRootName response type.
+### QueryScopeNetAssetValuesRequest
+QueryNetAssetValuesRequest is the request type for the Query/NetAssetValues method.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `id` | [string](#string) | | scopeid metadata address |
-
+
-### MsgDeleteNameRequest
-MsgDeleteNameRequest defines an sdk.Msg type that is used to remove an existing address/name binding. The binding
-may not have any child names currently bound for this request to be successful. All associated attributes on account
-addresses will be deleted.
+### QueryScopeNetAssetValuesResponse
+QueryNetAssetValuesRequest is the response type for the Query/NetAssetValues method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `record` | [NameRecord](#provenance.name.v1.NameRecord) | | The record being removed |
+| `net_asset_values` | [NetAssetValue](#provenance-metadata-v1-NetAssetValue) | repeated | net asset values for scope |
-
+
-### MsgDeleteNameResponse
-MsgDeleteNameResponse defines the Msg/DeleteName response type.
+### RecordSpecificationRequest
+RecordSpecificationRequest is the request type for the Query/RecordSpecification RPC method.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
+| `name` | [string](#string) | | name is the name of the record to look up. It is required if the specification_id is a uuid or contract specification address. It is ignored if the specification_id is a record specification address. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
-### MsgModifyNameRequest
-MsgModifyNameRequest defines a governance method that is used to update an existing address/name binding.
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `authority` | [string](#string) | | The address signing the message |
-| `record` | [NameRecord](#provenance.name.v1.NameRecord) | | The record being updated |
+### RecordSpecificationResponse
+RecordSpecificationResponse is the response type for the Query/RecordSpecification RPC method.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `record_specification` | [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper) | | record_specification is the wrapped record specification. |
+| `request` | [RecordSpecificationRequest](#provenance-metadata-v1-RecordSpecificationRequest) | | request is a copy of the request that generated these results. |
-
-### MsgModifyNameResponse
-MsgModifyNameResponse defines the Msg/ModifyName response type.
+
+### RecordSpecificationWrapper
+RecordSpecificationWrapper contains a single record specification and some extra identifiers for it.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `specification` | [RecordSpecification](#provenance-metadata-v1-RecordSpecification) | | specification is the on-chain record specification message. |
+| `record_spec_id_info` | [RecordSpecIdInfo](#provenance-metadata-v1-RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification. |
-
-
-
-
-### Msg
-Msg defines the bank Msg service.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `BindName` | [MsgBindNameRequest](#provenance.name.v1.MsgBindNameRequest) | [MsgBindNameResponse](#provenance.name.v1.MsgBindNameResponse) | BindName binds a name to an address under a root name. | |
-| `DeleteName` | [MsgDeleteNameRequest](#provenance.name.v1.MsgDeleteNameRequest) | [MsgDeleteNameResponse](#provenance.name.v1.MsgDeleteNameResponse) | DeleteName defines a method to verify a particular invariance. | |
-| `ModifyName` | [MsgModifyNameRequest](#provenance.name.v1.MsgModifyNameRequest) | [MsgModifyNameResponse](#provenance.name.v1.MsgModifyNameResponse) | ModifyName defines a method to modify the attributes of an existing name. | |
-| `CreateRootName` | [MsgCreateRootNameRequest](#provenance.name.v1.MsgCreateRootNameRequest) | [MsgCreateRootNameResponse](#provenance.name.v1.MsgCreateRootNameResponse) | CreateRootName defines a governance method for creating a root name. | |
+### RecordSpecificationsAllRequest
+RecordSpecificationsAllRequest is the request type for the Query/RecordSpecificationsAll RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
-Top
-## provenance/oracle/v1/event.proto
-
+
-### EventOracleQueryError
-EventOracleQueryError is an event for when the chain receives an error response from an oracle query
+### RecordSpecificationsAllResponse
+RecordSpecificationsAllResponse is the response type for the Query/RecordSpecificationsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `channel` | [string](#string) | | channel is the local channel that the oracle query response was received from |
-| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
-| `error` | [string](#string) | | error is the error message received from the query |
+| `record_specifications` | [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper) | repeated | record_specifications are the wrapped record specifications. |
+| `request` | [RecordSpecificationsAllRequest](#provenance-metadata-v1-RecordSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
+
-### EventOracleQuerySuccess
-EventOracleQuerySuccess is an event for when the chain receives a successful response from an oracle query
+### RecordSpecificationsForContractSpecificationRequest
+RecordSpecificationsForContractSpecificationRequest is the request type for the
+Query/RecordSpecificationsForContractSpecification RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `channel` | [string](#string) | | channel is the local channel that the oracle query response was received from |
-| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
-| `result` | [string](#string) | | result is the data received from the query |
+| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84 or a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn. It can also be a record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### EventOracleQueryTimeout
-EventOracleQueryTimeout is an event for when the chain receives a timeout from an oracle query
+### RecordSpecificationsForContractSpecificationResponse
+RecordSpecificationsForContractSpecificationResponse is the response type for the
+Query/RecordSpecificationsForContractSpecification RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `channel` | [string](#string) | | channel is the local channel that the oracle timeout was received from |
-| `sequence_id` | [string](#string) | | sequence_id is a unique identifier of the query |
+| `record_specifications` | [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper) | repeated | record_specifications is any number of wrapped record specifications associated with this contract_specification. |
+| `contract_specification_uuid` | [string](#string) | | contract_specification_uuid is the uuid of this contract specification. |
+| `contract_specification_addr` | [string](#string) | | contract_specification_addr is the contract specification address as a bech32 encoded string. |
+| `request` | [RecordSpecificationsForContractSpecificationRequest](#provenance-metadata-v1-RecordSpecificationsForContractSpecificationRequest) | | request is a copy of the request that generated these results. |
-
-
+
-
+### RecordWrapper
+RecordWrapper contains a single record and some extra identifiers for it.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `record` | [Record](#provenance-metadata-v1-Record) | | record is the on-chain record message. |
+| `record_id_info` | [RecordIdInfo](#provenance-metadata-v1-RecordIdInfo) | | record_id_info contains information about the id/address of the record. |
+| `record_spec_id_info` | [RecordSpecIdInfo](#provenance-metadata-v1-RecordSpecIdInfo) | | record_spec_id_info contains information about the id/address of the record specification. |
-
-Top
-## provenance/oracle/v1/genesis.proto
-
+
-### GenesisState
-GenesisState defines the oracle module's genesis state.
+### RecordsAllRequest
+RecordsAllRequest is the request type for the Query/RecordsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `port_id` | [string](#string) | | The port to assign to the module |
-| `oracle` | [string](#string) | | The address of the oracle |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
-
+
-
+### RecordsAllResponse
+RecordsAllResponse is the response type for the Query/RecordsAll RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `records` | [RecordWrapper](#provenance-metadata-v1-RecordWrapper) | repeated | records are the wrapped records. |
+| `request` | [RecordsAllRequest](#provenance-metadata-v1-RecordsAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
-Top
-## provenance/oracle/v1/query.proto
-
+
-### QueryOracleAddressRequest
-QueryOracleAddressRequest queries for the address of the oracle.
+### RecordsRequest
+RecordsRequest is the request type for the Query/Records RPC method.
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
+| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
+| `session_id` | [string](#string) | | session_id can either be a uuid, e.g. 5803f8bc-6067-4eb5-951f-2121671c2ec0 or a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. This can only be a uuid if a scope_id is also provided. |
+| `name` | [string](#string) | | name is the name of the record to look for |
+| `include_scope` | [bool](#bool) | | include_scope is a flag for whether to include the the scope containing these records in the response. |
+| `include_sessions` | [bool](#bool) | | include_sessions is a flag for whether to include the sessions containing these records in the response. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### QueryOracleAddressResponse
-QueryOracleAddressResponse contains the address of the oracle.
+### RecordsResponse
+RecordsResponse is the response type for the Query/Records RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | The address of the oracle |
+| `scope` | [ScopeWrapper](#provenance-metadata-v1-ScopeWrapper) | | scope is the wrapped scope that holds these records (if requested). |
+| `sessions` | [SessionWrapper](#provenance-metadata-v1-SessionWrapper) | repeated | sessions is any number of wrapped sessions that hold these records (if requested). |
+| `records` | [RecordWrapper](#provenance-metadata-v1-RecordWrapper) | repeated | records is any number of wrapped record results. |
+| `request` | [RecordsRequest](#provenance-metadata-v1-RecordsRequest) | | request is a copy of the request that generated these results. |
-
+
-### QueryOracleRequest
-QueryOracleRequest queries the module's oracle.
+### ScopeRequest
+ScopeRequest is the request type for the Query/Scope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `query` | [bytes](#bytes) | | Query contains the query data passed to the oracle. |
+| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
+| `session_addr` | [string](#string) | | session_addr is a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. |
+| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
+| `include_sessions` | [bool](#bool) | | include_sessions is a flag for whether to include the sessions of the scope in the response. |
+| `include_records` | [bool](#bool) | | include_records is a flag for whether to include the records of the scope in the response. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### QueryOracleResponse
-QueryOracleResponse contains the result of the query sent to the oracle.
+### ScopeResponse
+ScopeResponse is the response type for the Query/Scope RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `data` | [bytes](#bytes) | | Data contains the json data returned from the oracle. |
-
-
-
-
+| `scope` | [ScopeWrapper](#provenance-metadata-v1-ScopeWrapper) | | scope is the wrapped scope result. |
+| `sessions` | [SessionWrapper](#provenance-metadata-v1-SessionWrapper) | repeated | sessions is any number of wrapped sessions in this scope (if requested). |
+| `records` | [RecordWrapper](#provenance-metadata-v1-RecordWrapper) | repeated | records is any number of wrapped records in this scope (if requested). |
+| `request` | [ScopeRequest](#provenance-metadata-v1-ScopeRequest) | | request is a copy of the request that generated these results. |
-
-
-
-
-### Query
-Query defines the gRPC querier service for oracle module.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `OracleAddress` | [QueryOracleAddressRequest](#provenance.oracle.v1.QueryOracleAddressRequest) | [QueryOracleAddressResponse](#provenance.oracle.v1.QueryOracleAddressResponse) | OracleAddress returns the address of the oracle | GET|/provenance/oracle/v1/oracle_address|
-| `Oracle` | [QueryOracleRequest](#provenance.oracle.v1.QueryOracleRequest) | [QueryOracleResponse](#provenance.oracle.v1.QueryOracleResponse) | Oracle forwards a query to the module's oracle | GET|/provenance/oracle/v1/oracle|
+### ScopeSpecificationRequest
+ScopeSpecificationRequest is the request type for the Query/ScopeSpecification RPC method.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `specification_id` | [string](#string) | | specification_id can either be a uuid, e.g. dc83ea70-eacd-40fe-9adf-1cf6148bf8a2 or a bech32 scope specification address, e.g. scopespec1qnwg86nsatx5pl56muw0v9ytlz3qu3jx6m. |
+| `include_contract_specs` | [bool](#bool) | | include_contract_specs is a flag for whether to include the contract specifications of the scope specification in the response. |
+| `include_record_specs` | [bool](#bool) | | include_record_specs is a flag for whether to include the record specifications of the scope specification in the response. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
-Top
-## provenance/oracle/v1/tx.proto
-
+
-### MsgSendQueryOracleRequest
-MsgSendQueryOracleRequest queries an oracle on another chain
+### ScopeSpecificationResponse
+ScopeSpecificationResponse is the response type for the Query/ScopeSpecification RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `query` | [bytes](#bytes) | | Query contains the query data passed to the oracle. |
-| `channel` | [string](#string) | | Channel is the channel to the oracle. |
-| `authority` | [string](#string) | | The signing authority for the request |
+| `scope_specification` | [ScopeSpecificationWrapper](#provenance-metadata-v1-ScopeSpecificationWrapper) | | scope_specification is the wrapped scope specification. |
+| `contract_specs` | [ContractSpecificationWrapper](#provenance-metadata-v1-ContractSpecificationWrapper) | repeated | contract_specs is any number of wrapped contract specifications in this scope specification (if requested). |
+| `record_specs` | [RecordSpecificationWrapper](#provenance-metadata-v1-RecordSpecificationWrapper) | repeated | record_specs is any number of wrapped record specifications in this scope specification (if requested). |
+| `request` | [ScopeSpecificationRequest](#provenance-metadata-v1-ScopeSpecificationRequest) | | request is a copy of the request that generated these results. |
-
+
-### MsgSendQueryOracleResponse
-MsgSendQueryOracleResponse contains the id of the oracle query.
+### ScopeSpecificationWrapper
+ScopeSpecificationWrapper contains a single scope specification and some extra identifiers for it.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `sequence` | [uint64](#uint64) | | The sequence number that uniquely identifies the query. |
+| `specification` | [ScopeSpecification](#provenance-metadata-v1-ScopeSpecification) | | specification is the on-chain scope specification message. |
+| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance-metadata-v1-ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification. |
-
+
-### MsgUpdateOracleRequest
-MsgUpdateOracleRequest is the request type for updating an oracle's contract address
+### ScopeSpecificationsAllRequest
+ScopeSpecificationsAllRequest is the request type for the Query/ScopeSpecificationsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | The address of the oracle's contract |
-| `authority` | [string](#string) | | The signing authorities for the request |
-
-
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
-### MsgUpdateOracleResponse
-MsgUpdateOracleResponse is the response type for updating the oracle.
+
+### ScopeSpecificationsAllResponse
+ScopeSpecificationsAllResponse is the response type for the Query/ScopeSpecificationsAll RPC method.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope_specifications` | [ScopeSpecificationWrapper](#provenance-metadata-v1-ScopeSpecificationWrapper) | repeated | scope_specifications are the wrapped scope specifications. |
+| `request` | [ScopeSpecificationsAllRequest](#provenance-metadata-v1-ScopeSpecificationsAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
-
-
-
-### Msg
-Msg
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `UpdateOracle` | [MsgUpdateOracleRequest](#provenance.oracle.v1.MsgUpdateOracleRequest) | [MsgUpdateOracleResponse](#provenance.oracle.v1.MsgUpdateOracleResponse) | UpdateOracle is the RPC endpoint for updating the oracle | |
-| `SendQueryOracle` | [MsgSendQueryOracleRequest](#provenance.oracle.v1.MsgSendQueryOracleRequest) | [MsgSendQueryOracleResponse](#provenance.oracle.v1.MsgSendQueryOracleResponse) | SendQueryOracle sends a query to an oracle on another chain | |
+### ScopeWrapper
+SessionWrapper contains a single scope and its uuid.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `scope` | [Scope](#provenance-metadata-v1-Scope) | | scope is the on-chain scope message. |
+| `scope_id_info` | [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo) | | scope_id_info contains information about the id/address of the scope. |
+| `scope_spec_id_info` | [ScopeSpecIdInfo](#provenance-metadata-v1-ScopeSpecIdInfo) | | scope_spec_id_info contains information about the id/address of the scope specification. |
-
-Top
-## provenance/reward/v1/reward.proto
-
+
-### ActionCounter
-ActionCounter is a key-value pair that maps action type to the number of times it was performed.
+### ScopesAllRequest
+ScopesAllRequest is the request type for the Query/ScopesAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `action_type` | [string](#string) | | The type of action performed. |
-| `number_of_actions` | [uint64](#uint64) | | The number of times this action has been performed |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### ActionDelegate
-ActionDelegate represents the delegate action and its required eligibility criteria.
+### ScopesAllResponse
+ScopesAllResponse is the response type for the Query/ScopesAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `minimum_actions` | [uint64](#uint64) | | Minimum number of successful delegates. |
-| `maximum_actions` | [uint64](#uint64) | | Maximum number of successful delegates. |
-| `minimum_delegation_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Minimum amount that the user must have currently delegated on the validator. |
-| `maximum_delegation_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Maximum amount that the user must have currently delegated on the validator. |
-| `minimum_active_stake_percentile` | [string](#string) | | Minimum percentile that can be below the validator's power ranking. |
-| `maximum_active_stake_percentile` | [string](#string) | | Maximum percentile that can be below the validator's power ranking. |
+| `scopes` | [ScopeWrapper](#provenance-metadata-v1-ScopeWrapper) | repeated | scopes are the wrapped scopes. |
+| `request` | [ScopesAllRequest](#provenance-metadata-v1-ScopesAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
+
-### ActionTransfer
-ActionTransfer represents the transfer action and its required eligibility criteria.
+### SessionWrapper
+SessionWrapper contains a single session and some extra identifiers for it.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `minimum_actions` | [uint64](#uint64) | | Minimum number of successful transfers. |
-| `maximum_actions` | [uint64](#uint64) | | Maximum number of successful transfers. |
-| `minimum_delegation_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Minimum delegation amount the account must have across all validators, for the transfer action to be counted. |
+| `session` | [Session](#provenance-metadata-v1-Session) | | session is the on-chain session message. |
+| `session_id_info` | [SessionIdInfo](#provenance-metadata-v1-SessionIdInfo) | | session_id_info contains information about the id/address of the session. |
+| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo) | | contract_spec_id_info contains information about the id/address of the contract specification. |
-
+
-### ActionVote
-ActionVote represents the voting action and its required eligibility criteria.
+### SessionsAllRequest
+SessionsAllRequest is the request type for the Query/SessionsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `minimum_actions` | [uint64](#uint64) | | Minimum number of successful votes. |
-| `maximum_actions` | [uint64](#uint64) | | Maximum number of successful votes. |
-| `minimum_delegation_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Minimum delegation amount the account must have across all validators, for the vote action to be counted. |
-| `validator_multiplier` | [uint64](#uint64) | | Positive multiplier that is applied to the shares awarded by the vote action when conditions are met(for now the only condition is the current vote is a validator vote). A value of zero will behave the same as one |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### ClaimPeriodRewardDistribution
-ClaimPeriodRewardDistribution, this is updated at the end of every claim period.
+### SessionsAllResponse
+SessionsAllResponse is the response type for the Query/SessionsAll RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `claim_period_id` | [uint64](#uint64) | | The claim period id. |
-| `reward_program_id` | [uint64](#uint64) | | The id of the reward program that this reward belongs to. |
-| `total_rewards_pool_for_claim_period` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | The sum of all the granted rewards for this claim period. |
-| `rewards_pool` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | The final allocated rewards for this claim period. |
-| `total_shares` | [int64](#int64) | | The total number of granted shares for this claim period. |
-| `claim_period_ended` | [bool](#bool) | | A flag representing if the claim period for this reward has ended. |
+| `sessions` | [SessionWrapper](#provenance-metadata-v1-SessionWrapper) | repeated | sessions are the wrapped sessions. |
+| `request` | [SessionsAllRequest](#provenance-metadata-v1-SessionsAllRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
-
+
-### QualifyingAction
-QualifyingAction can be one of many action types.
+### SessionsRequest
+SessionsRequest is the request type for the Query/Sessions RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `delegate` | [ActionDelegate](#provenance.reward.v1.ActionDelegate) | | |
-| `transfer` | [ActionTransfer](#provenance.reward.v1.ActionTransfer) | | |
-| `vote` | [ActionVote](#provenance.reward.v1.ActionVote) | | |
+| `scope_id` | [string](#string) | | scope_id can either be a uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a bech32 scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. |
+| `session_id` | [string](#string) | | session_id can either be a uuid, e.g. 5803f8bc-6067-4eb5-951f-2121671c2ec0 or a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. This can only be a uuid if a scope_id is also provided. |
+| `record_addr` | [string](#string) | | record_addr is a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. |
+| `record_name` | [string](#string) | | record_name is the name of the record to find the session for in the provided scope. |
+| `include_scope` | [bool](#bool) | | include_scope is a flag for whether to include the scope containing these sessions in the response. |
+| `include_records` | [bool](#bool) | | include_records is a flag for whether to include the records of these sessions in the response. |
+| `exclude_id_info` | [bool](#bool) | | exclude_id_info is a flag for whether to exclude the id info from the response. |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
-
+
-### QualifyingActions
-QualifyingActions contains a list of QualifyingActions.
+### SessionsResponse
+SessionsResponse is the response type for the Query/Sessions RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `qualifying_actions` | [QualifyingAction](#provenance.reward.v1.QualifyingAction) | repeated | The actions that count towards the reward. |
+| `scope` | [ScopeWrapper](#provenance-metadata-v1-ScopeWrapper) | | scope is the wrapped scope that holds these sessions (if requested). |
+| `sessions` | [SessionWrapper](#provenance-metadata-v1-SessionWrapper) | repeated | sessions is any number of wrapped session results. |
+| `records` | [RecordWrapper](#provenance-metadata-v1-RecordWrapper) | repeated | records is any number of wrapped records contained in these sessions (if requested). |
+| `request` | [SessionsRequest](#provenance-metadata-v1-SessionsRequest) | | request is a copy of the request that generated these results. |
-
+
-### RewardAccountState
-RewardAccountState contains state at the claim period level for a specific address.
+### ValueOwnershipRequest
+ValueOwnershipRequest is the request type for the Query/ValueOwnership RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | The id of the reward program that this share belongs to. |
-| `claim_period_id` | [uint64](#uint64) | | The id of the claim period that the share belongs to. |
-| `address` | [string](#string) | | Owner of the reward account state. |
-| `action_counter` | [ActionCounter](#provenance.reward.v1.ActionCounter) | repeated | The number of actions performed by this account, mapped by action type. |
-| `shares_earned` | [uint64](#uint64) | | The amount of granted shares for the address in the reward program's claim period. |
-| `claim_status` | [RewardAccountState.ClaimStatus](#provenance.reward.v1.RewardAccountState.ClaimStatus) | | The status of the claim. |
+| `address` | [string](#string) | | |
+| `include_request` | [bool](#bool) | | include_request is a flag for whether to include this request in your result. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines optional pagination parameters for the request. |
-
+
-### RewardProgram
-RewardProgram
+### ValueOwnershipResponse
+ValueOwnershipResponse is the response type for the Query/ValueOwnership RPC method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | An integer to uniquely identify the reward program. |
-| `title` | [string](#string) | | Name to help identify the Reward Program.(MaxTitleLength=140) |
-| `description` | [string](#string) | | Short summary describing the Reward Program.(MaxDescriptionLength=10000) |
-| `distribute_from_address` | [string](#string) | | address that provides funds for the total reward pool. |
-| `total_reward_pool` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | The total amount of funding given to the RewardProgram. |
-| `remaining_pool_balance` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | The remaining funds available to distribute after n claim periods have passed. |
-| `claimed_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | The total amount of all funds claimed by participants for all past claim periods. |
-| `max_reward_by_address` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Maximum reward per claim period per address. |
-| `minimum_rollover_amount` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | Minimum amount of coins for a program to rollover. |
-| `claim_period_seconds` | [uint64](#uint64) | | Number of seconds that a claim period lasts. |
-| `program_start_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that a RewardProgram should start and switch to STARTED state. |
-| `expected_program_end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that a RewardProgram is expected to end, based on data when it was setup. |
-| `program_end_time_max` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time that a RewardProgram MUST end. |
-| `claim_period_end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Used internally to calculate and track the current claim period's ending time. |
-| `actual_program_end_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | Time the RewardProgram switched to FINISHED state. Initially set as empty. |
-| `claim_periods` | [uint64](#uint64) | | Number of claim periods this program will run for. |
-| `current_claim_period` | [uint64](#uint64) | | Current claim period of the RewardProgram. Uses 1-based indexing. |
-| `max_rollover_claim_periods` | [uint64](#uint64) | | maximum number of claim periods a reward program can rollover. |
-| `state` | [RewardProgram.State](#provenance.reward.v1.RewardProgram.State) | | Current state of the RewardProgram. |
-| `expiration_offset` | [uint64](#uint64) | | Grace period after a RewardProgram FINISHED. It is the number of seconds until a RewardProgram enters the EXPIRED state. |
-| `qualifying_actions` | [QualifyingAction](#provenance.reward.v1.QualifyingAction) | repeated | Actions that count towards the reward. |
+| `scope_uuids` | [string](#string) | repeated | A list of scope ids (uuid) associated with the given address. |
+| `request` | [ValueOwnershipRequest](#provenance-metadata-v1-ValueOwnershipRequest) | | request is a copy of the request that generated these results. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination provides the pagination information of this response. |
@@ -10975,63 +11731,81 @@ RewardProgram
+
-
+
-### RewardAccountState.ClaimStatus
-ClaimStatus is the state a claim is in
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| CLAIM_STATUS_UNSPECIFIED | 0 | undefined state |
-| CLAIM_STATUS_UNCLAIMABLE | 1 | unclaimable status |
-| CLAIM_STATUS_CLAIMABLE | 2 | unclaimable claimable |
-| CLAIM_STATUS_CLAIMED | 3 | unclaimable claimed |
-| CLAIM_STATUS_EXPIRED | 4 | unclaimable expired |
+
+
+### Query
+Query defines the Metadata Query service.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `Params` | [QueryParamsRequest](#provenance-metadata-v1-QueryParamsRequest) | [QueryParamsResponse](#provenance-metadata-v1-QueryParamsResponse) | Params queries the parameters of x/metadata module. |
+| `Scope` | [ScopeRequest](#provenance-metadata-v1-ScopeRequest) | [ScopeResponse](#provenance-metadata-v1-ScopeResponse) | Scope searches for a scope.
The scope id, if provided, must either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. The session addr, if provided, must be a bech32 session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3.
* If only a scope_id is provided, that scope is returned. * If only a session_addr is provided, the scope containing that session is returned. * If only a record_addr is provided, the scope containing that record is returned. * If more than one of scope_id, session_addr, and record_addr are provided, and they don't refer to the same scope, a bad request is returned.
Providing a session addr or record addr does not limit the sessions and records returned (if requested). Those parameters are only used to find the scope.
By default, sessions and records are not included. Set include_sessions and/or include_records to true to include sessions and/or records. |
+| `ScopesAll` | [ScopesAllRequest](#provenance-metadata-v1-ScopesAllRequest) | [ScopesAllResponse](#provenance-metadata-v1-ScopesAllResponse) | ScopesAll retrieves all scopes. |
+| `Sessions` | [SessionsRequest](#provenance-metadata-v1-SessionsRequest) | [SessionsResponse](#provenance-metadata-v1-SessionsResponse) | Sessions searches for sessions.
The scope_id can either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. Similarly, the session_id can either be a uuid or session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3.
* If only a scope_id is provided, all sessions in that scope are returned. * If only a session_id is provided, it must be an address, and that single session is returned. * If the session_id is a uuid, then either a scope_id or record_addr must also be provided, and that single session is returned. * If only a record_addr is provided, the session containing that record will be returned. * If a record_name is provided then either a scope_id, session_id as an address, or record_addr must also be provided, and the session containing that record will be returned.
A bad request is returned if: * The session_id is a uuid and is provided without a scope_id or record_addr. * A record_name is provided without any way to identify the scope (e.g. a scope_id, a session_id as an address, or a record_addr). * Two or more of scope_id, session_id as an address, and record_addr are provided and don't all refer to the same scope. * A record_addr (or scope_id and record_name) is provided with a session_id and that session does not contain such a record. * A record_addr and record_name are both provided, but reference different records.
By default, the scope and records are not included. Set include_scope and/or include_records to true to include the scope and/or records. |
+| `SessionsAll` | [SessionsAllRequest](#provenance-metadata-v1-SessionsAllRequest) | [SessionsAllResponse](#provenance-metadata-v1-SessionsAllResponse) | SessionsAll retrieves all sessions. |
+| `Records` | [RecordsRequest](#provenance-metadata-v1-RecordsRequest) | [RecordsResponse](#provenance-metadata-v1-RecordsResponse) | Records searches for records.
The record_addr, if provided, must be a bech32 record address, e.g. record1q2ge0zaztu65tx5x5llv5xc9ztsw42dq2jdvmdazuwzcaddhh8gmu3mcze3. The scope-id can either be scope uuid, e.g. 91978ba2-5f35-459a-86a7-feca1b0512e0 or a scope address, e.g. scope1qzge0zaztu65tx5x5llv5xc9ztsqxlkwel. Similarly, the session_id can either be a uuid or session address, e.g. session1qxge0zaztu65tx5x5llv5xc9zts9sqlch3sxwn44j50jzgt8rshvqyfrjcr. The name is the name of the record you're interested in.
* If only a record_addr is provided, that single record will be returned. * If only a scope_id is provided, all records in that scope will be returned. * If only a session_id (or scope_id/session_id), all records in that session will be returned. * If a name is provided with a scope_id and/or session_id, that single record will be returned.
A bad request is returned if: * The session_id is a uuid and no scope_id is provided. * There are two or more of record_addr, session_id, and scope_id, and they don't all refer to the same scope. * A name is provided, but not a scope_id and/or a session_id. * A name and record_addr are provided and the name doesn't match the record_addr.
By default, the scope and sessions are not included. Set include_scope and/or include_sessions to true to include the scope and/or sessions. |
+| `RecordsAll` | [RecordsAllRequest](#provenance-metadata-v1-RecordsAllRequest) | [RecordsAllResponse](#provenance-metadata-v1-RecordsAllResponse) | RecordsAll retrieves all records. |
+| `Ownership` | [OwnershipRequest](#provenance-metadata-v1-OwnershipRequest) | [OwnershipResponse](#provenance-metadata-v1-OwnershipResponse) | Ownership returns the scope identifiers that list the given address as either a data or value owner. |
+| `ValueOwnership` | [ValueOwnershipRequest](#provenance-metadata-v1-ValueOwnershipRequest) | [ValueOwnershipResponse](#provenance-metadata-v1-ValueOwnershipResponse) | ValueOwnership returns the scope identifiers that list the given address as the value owner. |
+| `ScopeSpecification` | [ScopeSpecificationRequest](#provenance-metadata-v1-ScopeSpecificationRequest) | [ScopeSpecificationResponse](#provenance-metadata-v1-ScopeSpecificationResponse) | ScopeSpecification returns a scope specification for the given specification id.
The specification_id can either be a uuid, e.g. dc83ea70-eacd-40fe-9adf-1cf6148bf8a2 or a bech32 scope specification address, e.g. scopespec1qnwg86nsatx5pl56muw0v9ytlz3qu3jx6m.
By default, the contract and record specifications are not included. Set include_contract_specs and/or include_record_specs to true to include contract and/or record specifications. |
+| `ScopeSpecificationsAll` | [ScopeSpecificationsAllRequest](#provenance-metadata-v1-ScopeSpecificationsAllRequest) | [ScopeSpecificationsAllResponse](#provenance-metadata-v1-ScopeSpecificationsAllResponse) | ScopeSpecificationsAll retrieves all scope specifications. |
+| `ContractSpecification` | [ContractSpecificationRequest](#provenance-metadata-v1-ContractSpecificationRequest) | [ContractSpecificationResponse](#provenance-metadata-v1-ContractSpecificationResponse) | ContractSpecification returns a contract specification for the given specification id.
The specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84, a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn, or a bech32 record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. If it is a record specification address, then the contract specification that contains that record specification is looked up.
By default, the record specifications for this contract specification are not included. Set include_record_specs to true to include them in the result. |
+| `ContractSpecificationsAll` | [ContractSpecificationsAllRequest](#provenance-metadata-v1-ContractSpecificationsAllRequest) | [ContractSpecificationsAllResponse](#provenance-metadata-v1-ContractSpecificationsAllResponse) | ContractSpecificationsAll retrieves all contract specifications. |
+| `RecordSpecificationsForContractSpecification` | [RecordSpecificationsForContractSpecificationRequest](#provenance-metadata-v1-RecordSpecificationsForContractSpecificationRequest) | [RecordSpecificationsForContractSpecificationResponse](#provenance-metadata-v1-RecordSpecificationsForContractSpecificationResponse) | RecordSpecificationsForContractSpecification returns the record specifications for the given input.
The specification_id can either be a uuid, e.g. def6bc0a-c9dd-4874-948f-5206e6060a84, a bech32 contract specification address, e.g. contractspec1q000d0q2e8w5say53afqdesxp2zqzkr4fn, or a bech32 record specification address, e.g. recspec1qh00d0q2e8w5say53afqdesxp2zw42dq2jdvmdazuwzcaddhh8gmuqhez44. If it is a record specification address, then the contract specification that contains that record specification is used. |
+| `RecordSpecification` | [RecordSpecificationRequest](#provenance-metadata-v1-RecordSpecificationRequest) | [RecordSpecificationResponse](#provenance-metadata-v1-RecordSpecificationResponse) | RecordSpecification returns a record specification for the given input. |
+| `RecordSpecificationsAll` | [RecordSpecificationsAllRequest](#provenance-metadata-v1-RecordSpecificationsAllRequest) | [RecordSpecificationsAllResponse](#provenance-metadata-v1-RecordSpecificationsAllResponse) | RecordSpecificationsAll retrieves all record specifications. |
+| `GetByAddr` | [GetByAddrRequest](#provenance-metadata-v1-GetByAddrRequest) | [GetByAddrResponse](#provenance-metadata-v1-GetByAddrResponse) | GetByAddr retrieves metadata given any address(es). |
+| `OSLocatorParams` | [OSLocatorParamsRequest](#provenance-metadata-v1-OSLocatorParamsRequest) | [OSLocatorParamsResponse](#provenance-metadata-v1-OSLocatorParamsResponse) | OSLocatorParams returns all parameters for the object store locator sub module. |
+| `OSLocator` | [OSLocatorRequest](#provenance-metadata-v1-OSLocatorRequest) | [OSLocatorResponse](#provenance-metadata-v1-OSLocatorResponse) | OSLocator returns an ObjectStoreLocator by its owner's address. |
+| `OSLocatorsByURI` | [OSLocatorsByURIRequest](#provenance-metadata-v1-OSLocatorsByURIRequest) | [OSLocatorsByURIResponse](#provenance-metadata-v1-OSLocatorsByURIResponse) | OSLocatorsByURI returns all ObjectStoreLocator entries for a locator uri. |
+| `OSLocatorsByScope` | [OSLocatorsByScopeRequest](#provenance-metadata-v1-OSLocatorsByScopeRequest) | [OSLocatorsByScopeResponse](#provenance-metadata-v1-OSLocatorsByScopeResponse) | OSLocatorsByScope returns all ObjectStoreLocator entries for a for all signer's present in the specified scope. |
+| `OSAllLocators` | [OSAllLocatorsRequest](#provenance-metadata-v1-OSAllLocatorsRequest) | [OSAllLocatorsResponse](#provenance-metadata-v1-OSAllLocatorsResponse) | OSAllLocators returns all ObjectStoreLocator entries. |
+| `AccountData` | [AccountDataRequest](#provenance-metadata-v1-AccountDataRequest) | [AccountDataResponse](#provenance-metadata-v1-AccountDataResponse) | AccountData gets the account data associated with a metadata address. Currently, only scope ids are supported. |
+| `ScopeNetAssetValues` | [QueryScopeNetAssetValuesRequest](#provenance-metadata-v1-QueryScopeNetAssetValuesRequest) | [QueryScopeNetAssetValuesResponse](#provenance-metadata-v1-QueryScopeNetAssetValuesResponse) | ScopeNetAssetValues returns net asset values for scope |
+
-
-### RewardProgram.State
-State is the state of the reward program
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| STATE_UNSPECIFIED | 0 | undefined program state |
-| STATE_PENDING | 1 | pending state of reward program |
-| STATE_STARTED | 2 | started state of reward program |
-| STATE_FINISHED | 3 | finished state of reward program |
-| STATE_EXPIRED | 4 | expired state of reward program |
+
+Top
+## provenance/metadata/v1/objectstore.proto
-
-
-
+
+### OSLocatorParams
+Params defines the parameters for the metadata-locator module methods.
-
-Top
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `max_uri_length` | [uint32](#uint32) | | |
-## provenance/reward/v1/genesis.proto
-
-### GenesisState
-GenesisState defines the reward module's genesis state.
+
+
+
+### ObjectStoreLocator
+Defines an Locator object stored on chain, which represents a owner( blockchain address) associated with a endpoint
+uri for it's associated object store.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | Reward program id is the next auto incremented id to be assigned to the next created reward program |
-| `reward_programs` | [RewardProgram](#provenance.reward.v1.RewardProgram) | repeated | Reward programs to initially start with. |
-| `claim_period_reward_distributions` | [ClaimPeriodRewardDistribution](#provenance.reward.v1.ClaimPeriodRewardDistribution) | repeated | Claim period reward distributions to initially start with. |
-| `reward_account_states` | [RewardAccountState](#provenance.reward.v1.RewardAccountState) | repeated | Reward account states to initially start with. |
+| `owner` | [string](#string) | | account address the endpoint is owned by |
+| `locator_uri` | [string](#string) | | locator endpoint uri |
+| `encryption_key` | [string](#string) | | owners encryption key address |
@@ -11047,595 +11821,639 @@ GenesisState defines the reward module's genesis state.
-
+
Top
-## provenance/reward/v1/query.proto
+## provenance/metadata/v1/metadata.proto
-
+
-### QueryClaimPeriodRewardDistributionsByIDRequest
-QueryClaimPeriodRewardDistributionsByIDRequest queries for a single ClaimPeriodRewardDistribution
+### ContractSpecIdInfo
+ContractSpecIdInfo contains various info regarding a contract specification id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_id` | [uint64](#uint64) | | The reward program that the claim period reward distribution belongs to. |
-| `claim_period_id` | [uint64](#uint64) | | The claim period that the claim period reward distribution was created for. |
-
-
+| `contract_spec_id` | [bytes](#bytes) | | contract_spec_id is the raw bytes of the contract specification address. |
+| `contract_spec_id_prefix` | [bytes](#bytes) | | contract_spec_id_prefix is the prefix portion of the contract_spec_id. |
+| `contract_spec_id_contract_spec_uuid` | [bytes](#bytes) | | contract_spec_id_contract_spec_uuid is the contract_spec_uuid portion of the contract_spec_id. |
+| `contract_spec_addr` | [string](#string) | | contract_spec_addr is the bech32 string version of the contract_spec_id. |
+| `contract_spec_uuid` | [string](#string) | | contract_spec_uuid is the uuid hex string of the contract_spec_id_contract_spec_uuid. |
-
-### QueryClaimPeriodRewardDistributionsByIDResponse
-QueryClaimPeriodRewardDistributionsByIDResponse returns the requested ClaimPeriodRewardDistribution
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `claim_period_reward_distribution` | [ClaimPeriodRewardDistribution](#provenance.reward.v1.ClaimPeriodRewardDistribution) | | The ClaimPeriodRewardDistribution object that was queried for. |
+### Params
+Params defines the set of params for the metadata module.
-
+
-### QueryClaimPeriodRewardDistributionsRequest
-QueryClaimPeriodRewardDistributionsRequest queries for all the ClaimPeriodRewardDistributions with pagination.
+### RecordIdInfo
+RecordIdInfo contains various info regarding a record id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `record_id` | [bytes](#bytes) | | record_id is the raw bytes of the record address. |
+| `record_id_prefix` | [bytes](#bytes) | | record_id_prefix is the prefix portion of the record_id. |
+| `record_id_scope_uuid` | [bytes](#bytes) | | record_id_scope_uuid is the scope_uuid portion of the record_id. |
+| `record_id_hashed_name` | [bytes](#bytes) | | record_id_hashed_name is the hashed name portion of the record_id. |
+| `record_addr` | [string](#string) | | record_addr is the bech32 string version of the record_id. |
+| `scope_id_info` | [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo) | | scope_id_info is information about the scope id referenced in the record_id. |
-
+
-### QueryClaimPeriodRewardDistributionsResponse
-QueryClaimPeriodRewardDistributionsResponse returns the list of paginated ClaimPeriodRewardDistributions
+### RecordSpecIdInfo
+RecordSpecIdInfo contains various info regarding a record specification id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `claim_period_reward_distributions` | [ClaimPeriodRewardDistribution](#provenance.reward.v1.ClaimPeriodRewardDistribution) | repeated | List of all ClaimPeriodRewardDistribution objects queried for. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the response. |
+| `record_spec_id` | [bytes](#bytes) | | record_spec_id is the raw bytes of the record specification address. |
+| `record_spec_id_prefix` | [bytes](#bytes) | | record_spec_id_prefix is the prefix portion of the record_spec_id. |
+| `record_spec_id_contract_spec_uuid` | [bytes](#bytes) | | record_spec_id_contract_spec_uuid is the contract_spec_uuid portion of the record_spec_id. |
+| `record_spec_id_hashed_name` | [bytes](#bytes) | | record_spec_id_hashed_name is the hashed name portion of the record_spec_id. |
+| `record_spec_addr` | [string](#string) | | record_spec_addr is the bech32 string version of the record_spec_id. |
+| `contract_spec_id_info` | [ContractSpecIdInfo](#provenance-metadata-v1-ContractSpecIdInfo) | | contract_spec_id_info is information about the contract spec id referenced in the record_spec_id. |
-
+
-### QueryRewardDistributionsByAddressRequest
-QueryRewardDistributionsByAddressRequest queries for reward claims by address that match the claim_status.
+### ScopeIdInfo
+ScopeIdInfo contains various info regarding a scope id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | The address that the claim belongs to. |
-| `claim_status` | [RewardAccountState.ClaimStatus](#provenance.reward.v1.RewardAccountState.ClaimStatus) | | The status that the reward account must have. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `scope_id` | [bytes](#bytes) | | scope_id is the raw bytes of the scope address. |
+| `scope_id_prefix` | [bytes](#bytes) | | scope_id_prefix is the prefix portion of the scope_id. |
+| `scope_id_scope_uuid` | [bytes](#bytes) | | scope_id_scope_uuid is the scope_uuid portion of the scope_id. |
+| `scope_addr` | [string](#string) | | scope_addr is the bech32 string version of the scope_id. |
+| `scope_uuid` | [string](#string) | | scope_uuid is the uuid hex string of the scope_id_scope_uuid. |
-
+
-### QueryRewardDistributionsByAddressResponse
-QueryRewardDistributionsByAddressResponse returns the reward claims for an address that match the claim_status.
+### ScopeSpecIdInfo
+ScopeSpecIdInfo contains various info regarding a scope specification id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `address` | [string](#string) | | The address that the reward account belongs to. |
-| `reward_account_state` | [RewardAccountResponse](#provenance.reward.v1.RewardAccountResponse) | repeated | List of RewardAccounts queried for. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the response. |
+| `scope_spec_id` | [bytes](#bytes) | | scope_spec_id is the raw bytes of the scope specification address. |
+| `scope_spec_id_prefix` | [bytes](#bytes) | | scope_spec_id_prefix is the prefix portion of the scope_spec_id. |
+| `scope_spec_id_scope_spec_uuid` | [bytes](#bytes) | | scope_spec_id_scope_spec_uuid is the scope_spec_uuid portion of the scope_spec_id. |
+| `scope_spec_addr` | [string](#string) | | scope_spec_addr is the bech32 string version of the scope_spec_id. |
+| `scope_spec_uuid` | [string](#string) | | scope_spec_uuid is the uuid hex string of the scope_spec_id_scope_spec_uuid. |
-
+
-### QueryRewardProgramByIDRequest
-QueryRewardProgramByIDRequest queries for the Reward Program with an identifier of id
+### SessionIdInfo
+SessionIdInfo contains various info regarding a session id.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | The id of the reward program to query. |
+| `session_id` | [bytes](#bytes) | | session_id is the raw bytes of the session address. |
+| `session_id_prefix` | [bytes](#bytes) | | session_id_prefix is the prefix portion of the session_id. |
+| `session_id_scope_uuid` | [bytes](#bytes) | | session_id_scope_uuid is the scope_uuid portion of the session_id. |
+| `session_id_session_uuid` | [bytes](#bytes) | | session_id_session_uuid is the session_uuid portion of the session_id. |
+| `session_addr` | [string](#string) | | session_addr is the bech32 string version of the session_id. |
+| `session_uuid` | [string](#string) | | session_uuid is the uuid hex string of the session_id_session_uuid. |
+| `scope_id_info` | [ScopeIdInfo](#provenance-metadata-v1-ScopeIdInfo) | | scope_id_info is information about the scope id referenced in the session_id. |
+
-
+
-### QueryRewardProgramByIDResponse
-QueryRewardProgramByIDResponse contains the requested RewardProgram
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `reward_program` | [RewardProgram](#provenance.reward.v1.RewardProgram) | | The reward program object that was queried for. |
+
+Top
+## provenance/metadata/v1/p8e/p8e.proto
-
+
-### QueryRewardProgramsRequest
-QueryRewardProgramsRequest queries for all reward programs matching the query_type
+### Condition
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `query_type` | [QueryRewardProgramsRequest.QueryType](#provenance.reward.v1.QueryRewardProgramsRequest.QueryType) | | A filter on the types of reward programs. |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `condition_name` | [string](#string) | | |
+| `result` | [ExecutionResult](#provenance-metadata-v1-p8e-ExecutionResult) | | |
-
+
-### QueryRewardProgramsResponse
-QueryRewardProgramsResponse contains the list of RewardPrograms matching the query
+### ConditionSpec
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_programs` | [RewardProgram](#provenance.reward.v1.RewardProgram) | repeated | List of RewardProgram objects matching the query_type. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the response. |
+| `func_name` | [string](#string) | | |
+| `input_specs` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | repeated | |
+| `output_spec` | [OutputSpec](#provenance-metadata-v1-p8e-OutputSpec) | | |
-
+
-### RewardAccountResponse
-RewardAccountResponse is an address' reward claim for a reward program's claim period.
+### Consideration
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | The id of the reward program that this claim belongs to. |
-| `total_reward_claim` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | total rewards claimed for all eligible claim periods in program. |
-| `claim_status` | [RewardAccountState.ClaimStatus](#provenance.reward.v1.RewardAccountState.ClaimStatus) | | The status of the claim. |
-| `claim_id` | [uint64](#uint64) | | The claim period that the claim belongs to. |
+| `consideration_name` | [string](#string) | | |
+| `inputs` | [ProposedFact](#provenance-metadata-v1-p8e-ProposedFact) | repeated | |
+| `result` | [ExecutionResult](#provenance-metadata-v1-p8e-ExecutionResult) | | |
-
+
-
+### ConsiderationSpec
+Deprecated: Do not use.
-### QueryRewardProgramsRequest.QueryType
-QueryType is the state of reward program to query
-| Name | Number | Description |
-| ---- | ------ | ----------- |
-| QUERY_TYPE_UNSPECIFIED | 0 | unspecified type |
-| QUERY_TYPE_ALL | 1 | all reward programs states |
-| QUERY_TYPE_PENDING | 2 | pending reward program state= |
-| QUERY_TYPE_ACTIVE | 3 | active reward program state |
-| QUERY_TYPE_OUTSTANDING | 4 | pending and active reward program states |
-| QUERY_TYPE_FINISHED | 5 | finished reward program state |
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `func_name` | [string](#string) | | |
+| `responsible_party` | [PartyType](#provenance-metadata-v1-p8e-PartyType) | | |
+| `input_specs` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | repeated | |
+| `output_spec` | [OutputSpec](#provenance-metadata-v1-p8e-OutputSpec) | | |
-
-
-
-### Query
-Query defines the gRPC querier service for reward module.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `RewardProgramByID` | [QueryRewardProgramByIDRequest](#provenance.reward.v1.QueryRewardProgramByIDRequest) | [QueryRewardProgramByIDResponse](#provenance.reward.v1.QueryRewardProgramByIDResponse) | RewardProgramByID returns a reward program matching the ID. | GET|/provenance/rewards/v1/reward_programs/{id}|
-| `RewardPrograms` | [QueryRewardProgramsRequest](#provenance.reward.v1.QueryRewardProgramsRequest) | [QueryRewardProgramsResponse](#provenance.reward.v1.QueryRewardProgramsResponse) | RewardPrograms returns a list of reward programs matching the query type. | GET|/provenance/rewards/v1/reward_programs|
-| `ClaimPeriodRewardDistributions` | [QueryClaimPeriodRewardDistributionsRequest](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsRequest) | [QueryClaimPeriodRewardDistributionsResponse](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsResponse) | ClaimPeriodRewardDistributions returns a list of claim period reward distributions matching the claim_status. | GET|/provenance/rewards/v1/claim_period_reward_distributions|
-| `ClaimPeriodRewardDistributionsByID` | [QueryClaimPeriodRewardDistributionsByIDRequest](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsByIDRequest) | [QueryClaimPeriodRewardDistributionsByIDResponse](#provenance.reward.v1.QueryClaimPeriodRewardDistributionsByIDResponse) | ClaimPeriodRewardDistributionsByID returns a claim period reward distribution matching the ID. | GET|/provenance/rewards/v1/claim_period_reward_distributions/{reward_id}/claim_periods/{claim_period_id}|
-| `RewardDistributionsByAddress` | [QueryRewardDistributionsByAddressRequest](#provenance.reward.v1.QueryRewardDistributionsByAddressRequest) | [QueryRewardDistributionsByAddressResponse](#provenance.reward.v1.QueryRewardDistributionsByAddressResponse) | RewardDistributionsByAddress returns a list of reward claims belonging to the account and matching the claim status. | GET|/provenance/rewards/v1/reward_claims/{address}|
+### Contract
+Deprecated: Do not use.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `definition` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | | |
+| `spec` | [Fact](#provenance-metadata-v1-p8e-Fact) | | |
+| `invoker` | [SigningAndEncryptionPublicKeys](#provenance-metadata-v1-p8e-SigningAndEncryptionPublicKeys) | | |
+| `inputs` | [Fact](#provenance-metadata-v1-p8e-Fact) | repeated | |
+| `conditions` | [Condition](#provenance-metadata-v1-p8e-Condition) | repeated | **Deprecated.** |
+| `considerations` | [Consideration](#provenance-metadata-v1-p8e-Consideration) | repeated | |
+| `recitals` | [Recital](#provenance-metadata-v1-p8e-Recital) | repeated | |
+| `times_executed` | [int32](#int32) | | |
+| `start_time` | [Timestamp](#provenance-metadata-v1-p8e-Timestamp) | | |
+| `context` | [bytes](#bytes) | | |
-
-Top
-## provenance/reward/v1/tx.proto
-
+
-### ClaimedRewardPeriodDetail
-ClaimedRewardPeriodDetail is information regarding an addresses' shares and reward for a claim period.
+### ContractSpec
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `claim_period_id` | [uint64](#uint64) | | claim period id |
-| `total_shares` | [uint64](#uint64) | | total shares accumulated for claim period |
-| `claim_period_reward` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | total rewards for claim period |
+| `definition` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | | |
+| `input_specs` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | repeated | |
+| `parties_involved` | [PartyType](#provenance-metadata-v1-p8e-PartyType) | repeated | |
+| `condition_specs` | [ConditionSpec](#provenance-metadata-v1-p8e-ConditionSpec) | repeated | |
+| `consideration_specs` | [ConsiderationSpec](#provenance-metadata-v1-p8e-ConsiderationSpec) | repeated | |
-
+
-### MsgClaimAllRewardsRequest
-MsgClaimRewardsResponse is the request type for claiming rewards from all reward programs RPC
+### DefinitionSpec
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_address` | [string](#string) | | reward address and signer of msg to send claimed rewards to. |
+| `name` | [string](#string) | | |
+| `resource_location` | [Location](#provenance-metadata-v1-p8e-Location) | | |
+| `signature` | [Signature](#provenance-metadata-v1-p8e-Signature) | | |
+| `type` | [DefinitionSpecType](#provenance-metadata-v1-p8e-DefinitionSpecType) | | |
-
+
-### MsgClaimAllRewardsResponse
-MsgClaimRewardsResponse is the response type for claiming rewards from all reward programs RPC
+### ExecutionResult
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `total_reward_claim` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | total rewards claimed for all eligible claim periods in all programs. |
-| `claim_details` | [RewardProgramClaimDetail](#provenance.reward.v1.RewardProgramClaimDetail) | repeated | details about acquired rewards from a reward program. |
+| `output` | [ProposedFact](#provenance-metadata-v1-p8e-ProposedFact) | | |
+| `result` | [ExecutionResultType](#provenance-metadata-v1-p8e-ExecutionResultType) | | |
+| `recorded_at` | [Timestamp](#provenance-metadata-v1-p8e-Timestamp) | | |
+| `error_message` | [string](#string) | | |
-
+
-### MsgClaimRewardsRequest
-MsgClaimRewardsRequest is the request type for claiming reward from reward program RPC
+### Fact
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | reward program id to claim rewards. |
-| `reward_address` | [string](#string) | | reward address and signer of msg to send claimed rewards to. |
+| `name` | [string](#string) | | |
+| `data_location` | [Location](#provenance-metadata-v1-p8e-Location) | | |
-
+
-### MsgClaimRewardsResponse
-MsgClaimRewardsResponse is the response type for claiming reward from reward program RPC
+### Location
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `claim_details` | [RewardProgramClaimDetail](#provenance.reward.v1.RewardProgramClaimDetail) | | details about acquired rewards from reward program. |
+| `ref` | [ProvenanceReference](#provenance-metadata-v1-p8e-ProvenanceReference) | | |
+| `classname` | [string](#string) | | |
-
+
-### MsgCreateRewardProgramRequest
-MsgCreateRewardProgramRequest is the request type for creating a reward program RPC
+### OutputSpec
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `title` | [string](#string) | | title for the reward program. |
-| `description` | [string](#string) | | description for the reward program. |
-| `distribute_from_address` | [string](#string) | | provider address for the reward program funds and signer of message. |
-| `total_reward_pool` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | total reward pool for the reward program. |
-| `max_reward_per_claim_address` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | maximum amount of funds an address can be rewarded per claim period. |
-| `program_start_time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | start time of the reward program. |
-| `claim_periods` | [uint64](#uint64) | | number of claim periods the reward program runs for. |
-| `claim_period_days` | [uint64](#uint64) | | number of days a claim period will exist. |
-| `max_rollover_claim_periods` | [uint64](#uint64) | | maximum number of claim periods a reward program can rollover. |
-| `expire_days` | [uint64](#uint64) | | number of days before a reward program will expire after it has ended. |
-| `qualifying_actions` | [QualifyingAction](#provenance.reward.v1.QualifyingAction) | repeated | actions that count towards the reward. |
+| `spec` | [DefinitionSpec](#provenance-metadata-v1-p8e-DefinitionSpec) | | |
-
+
-### MsgCreateRewardProgramResponse
-MsgCreateRewardProgramResponse is the response type for creating a reward program RPC
+### ProposedFact
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | reward program id that is generated on creation. |
+| `name` | [string](#string) | | |
+| `hash` | [string](#string) | | |
+| `classname` | [string](#string) | | |
+| `ancestor` | [ProvenanceReference](#provenance-metadata-v1-p8e-ProvenanceReference) | | |
-
+
-### MsgEndRewardProgramRequest
-MsgEndRewardProgramRequest is the request type for ending a reward program RPC
+### ProvenanceReference
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | reward program id to end. |
-| `program_owner_address` | [string](#string) | | owner of the reward program that funds were distributed from. |
-
-
+| `scope_uuid` | [UUID](#provenance-metadata-v1-p8e-UUID) | | |
+| `group_uuid` | [UUID](#provenance-metadata-v1-p8e-UUID) | | |
+| `hash` | [string](#string) | | |
+| `name` | [string](#string) | | |
-
-### MsgEndRewardProgramResponse
-MsgEndRewardProgramResponse is the response type for ending a reward program RPC
+
+### PublicKey
+Deprecated: Do not use.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `public_key_bytes` | [bytes](#bytes) | | |
+| `type` | [PublicKeyType](#provenance-metadata-v1-p8e-PublicKeyType) | | |
+| `curve` | [PublicKeyCurve](#provenance-metadata-v1-p8e-PublicKeyCurve) | | |
-
-### RewardProgramClaimDetail
-RewardProgramClaimDetail is the response object regarding an address's shares and reward for a reward program.
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `reward_program_id` | [uint64](#uint64) | | reward program id. |
-| `total_reward_claim` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | | total rewards claimed for all eligible claim periods in program. |
-| `claimed_reward_period_details` | [ClaimedRewardPeriodDetail](#provenance.reward.v1.ClaimedRewardPeriodDetail) | repeated | claim period details. |
+
+### Recital
+Deprecated: Do not use.
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `signer_role` | [PartyType](#provenance-metadata-v1-p8e-PartyType) | | |
+| `signer` | [SigningAndEncryptionPublicKeys](#provenance-metadata-v1-p8e-SigningAndEncryptionPublicKeys) | | |
+| `address` | [bytes](#bytes) | | |
-
-
-
-
-### Msg
-Msg
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `CreateRewardProgram` | [MsgCreateRewardProgramRequest](#provenance.reward.v1.MsgCreateRewardProgramRequest) | [MsgCreateRewardProgramResponse](#provenance.reward.v1.MsgCreateRewardProgramResponse) | CreateRewardProgram is the RPC endpoint for creating a rewards program | |
-| `EndRewardProgram` | [MsgEndRewardProgramRequest](#provenance.reward.v1.MsgEndRewardProgramRequest) | [MsgEndRewardProgramResponse](#provenance.reward.v1.MsgEndRewardProgramResponse) | EndRewardProgram is the RPC endpoint for ending a rewards program | |
-| `ClaimRewards` | [MsgClaimRewardsRequest](#provenance.reward.v1.MsgClaimRewardsRequest) | [MsgClaimRewardsResponse](#provenance.reward.v1.MsgClaimRewardsResponse) | ClaimRewards is the RPC endpoint for claiming rewards belonging to completed claim periods of a reward program | |
-| `ClaimAllRewards` | [MsgClaimAllRewardsRequest](#provenance.reward.v1.MsgClaimAllRewardsRequest) | [MsgClaimAllRewardsResponse](#provenance.reward.v1.MsgClaimAllRewardsResponse) | ClaimAllRewards is the RPC endpoint for claiming rewards for completed claim periods of every reward program for the signer of the tx. | |
+### Recitals
+Deprecated: Do not use.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `parties` | [Recital](#provenance-metadata-v1-p8e-Recital) | repeated | |
-
-Top
-## provenance/trigger/v1/event.proto
-
+
-### EventTriggerCreated
-EventTriggerCreated is an event for when a trigger is created
+### Signature
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
+| `algo` | [string](#string) | | |
+| `provider` | [string](#string) | | |
+| `signature` | [string](#string) | | |
+| `signer` | [SigningAndEncryptionPublicKeys](#provenance-metadata-v1-p8e-SigningAndEncryptionPublicKeys) | | |
-
+
-### EventTriggerDestroyed
-EventTriggerDestroyed is an event for when a trigger is destroyed
+### SignatureSet
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
+| `signatures` | [Signature](#provenance-metadata-v1-p8e-Signature) | repeated | |
-
+
-### EventTriggerDetected
-EventTriggerDetected is an event for when a trigger's event is detected
+### SigningAndEncryptionPublicKeys
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
+| `signing_public_key` | [PublicKey](#provenance-metadata-v1-p8e-PublicKey) | | |
+| `encryption_public_key` | [PublicKey](#provenance-metadata-v1-p8e-PublicKey) | | |
-
+
-### EventTriggerExecuted
-EventTriggerExecuted is an event for when a trigger is executed.
+### Timestamp
+Deprecated: Do not use.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [string](#string) | | trigger_id is a unique identifier of the trigger. |
-| `owner` | [string](#string) | | owner is the creator of the trigger. |
-| `success` | [bool](#bool) | | success indicates if all executed actions were successful. |
-
-
+| `seconds` | [int64](#int64) | | |
+| `nanos` | [int32](#int32) | | |
-
-
-
-
+
+### UUID
+Deprecated: Do not use.
-
-Top
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `value` | [string](#string) | | |
-## provenance/trigger/v1/trigger.proto
-
-### Attribute
-Attribute
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The name of the attribute that the event must have to be considered a match. |
-| `value` | [string](#string) | | The value of the attribute that the event must have to be considered a match. |
+
+### DefinitionSpecType
+Deprecated: Do not use.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `DEFINITION_SPEC_TYPE_UNKNOWN` | `0` | Deprecated: Do not use. |
+| `DEFINITION_SPEC_TYPE_PROPOSED` | `1` | Deprecated: Do not use. |
+| `DEFINITION_SPEC_TYPE_FACT` | `2` | Deprecated: Do not use. |
+| `DEFINITION_SPEC_TYPE_FACT_LIST` | `3` | Deprecated: Do not use. |
+
-
+### ExecutionResultType
+Deprecated: Do not use.
-### BlockHeightEvent
-BlockHeightEvent
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `RESULT_TYPE_UNKNOWN` | `0` | Deprecated: Do not use. |
+| `RESULT_TYPE_PASS` | `1` | Deprecated: Do not use. |
+| `RESULT_TYPE_SKIP` | `2` | Deprecated: Do not use. |
+| `RESULT_TYPE_FAIL` | `3` | Deprecated: Do not use. |
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `block_height` | [uint64](#uint64) | | The height that the trigger should fire at. |
+
+### PartyType
+Deprecated: Do not use.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `PARTY_TYPE_UNKNOWN` | `0` | Deprecated: Do not use. |
+| `PARTY_TYPE_ORIGINATOR` | `1` | Deprecated: Do not use. |
+| `PARTY_TYPE_SERVICER` | `2` | Deprecated: Do not use. |
+| `PARTY_TYPE_INVESTOR` | `3` | Deprecated: Do not use. |
+| `PARTY_TYPE_CUSTODIAN` | `4` | Deprecated: Do not use. |
+| `PARTY_TYPE_OWNER` | `5` | Deprecated: Do not use. |
+| `PARTY_TYPE_AFFILIATE` | `6` | Deprecated: Do not use. |
+| `PARTY_TYPE_OMNIBUS` | `7` | Deprecated: Do not use. |
+| `PARTY_TYPE_PROVENANCE` | `8` | Deprecated: Do not use. |
+| `PARTY_TYPE_MARKER` | `9` | Deprecated: Do not use. |
+| `PARTY_TYPE_CONTROLLER` | `10` | Deprecated: Do not use. |
+| `PARTY_TYPE_VALIDATOR` | `11` | Deprecated: Do not use. |
-
+
-### BlockTimeEvent
-BlockTimeEvent
+### PublicKeyCurve
+Deprecated: Do not use.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `SECP256K1` | `0` | Deprecated: Do not use. |
+| `P256` | `1` | Deprecated: Do not use. |
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | The time the trigger should fire at. |
+
+### PublicKeyType
+Deprecated: Do not use.
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| `ELLIPTIC` | `0` | Deprecated: Do not use. |
-
+
-### QueuedTrigger
-QueuedTrigger
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `block_height` | [uint64](#uint64) | | The block height the trigger was detected and queued. |
-| `time` | [google.protobuf.Timestamp](#google.protobuf.Timestamp) | | The time the trigger was detected and queued. |
-| `trigger` | [Trigger](#provenance.trigger.v1.Trigger) | | The trigger that was detected. |
+
+Top
+## provenance/metadata/v1/genesis.proto
-
+
-### TransactionEvent
-TransactionEvent
+### GenesisState
+GenesisState defines the account module's genesis state.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `name` | [string](#string) | | The name of the event for a match. |
-| `attributes` | [Attribute](#provenance.trigger.v1.Attribute) | repeated | The attributes that must be present for a match. |
+| `params` | [Params](#provenance-metadata-v1-Params) | | params defines all the parameters of the module. |
+| `scopes` | [Scope](#provenance-metadata-v1-Scope) | repeated | A collection of metadata scopes and specs to create on start |
+| `sessions` | [Session](#provenance-metadata-v1-Session) | repeated | |
+| `records` | [Record](#provenance-metadata-v1-Record) | repeated | |
+| `scope_specifications` | [ScopeSpecification](#provenance-metadata-v1-ScopeSpecification) | repeated | |
+| `contract_specifications` | [ContractSpecification](#provenance-metadata-v1-ContractSpecification) | repeated | |
+| `record_specifications` | [RecordSpecification](#provenance-metadata-v1-RecordSpecification) | repeated | |
+| `o_s_locator_params` | [OSLocatorParams](#provenance-metadata-v1-OSLocatorParams) | | |
+| `object_store_locators` | [ObjectStoreLocator](#provenance-metadata-v1-ObjectStoreLocator) | repeated | |
+| `net_asset_values` | [MarkerNetAssetValues](#provenance-metadata-v1-MarkerNetAssetValues) | repeated | Net asset values assigned to scopes |
-
+
-### Trigger
-Trigger
+### MarkerNetAssetValues
+MarkerNetAssetValues defines the net asset values for a scope
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | An integer to uniquely identify the trigger. |
-| `owner` | [string](#string) | | The owner of the trigger. |
-| `event` | [google.protobuf.Any](#google.protobuf.Any) | | The event that must be detected for the trigger to fire. |
-| `actions` | [google.protobuf.Any](#google.protobuf.Any) | repeated | The messages to run when the trigger fires. |
+| `address` | [string](#string) | | address defines the scope address |
+| `net_asset_values` | [NetAssetValue](#provenance-metadata-v1-NetAssetValue) | repeated | net_asset_values that are assigned to scope |
@@ -11651,42 +12469,40 @@ Trigger
-
+
Top
-## provenance/trigger/v1/genesis.proto
+## provenance/hold/v1/events.proto
-
+
-### GasLimit
-GasLimit defines the trigger module's grouping of a trigger and a gas limit
+### EventHoldAdded
+EventHoldAdded is an event indicating that some funds were placed on hold in an account.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [uint64](#uint64) | | The identifier of the trigger this GasLimit belongs to. |
-| `amount` | [uint64](#uint64) | | The maximum amount of gas that the trigger can use. |
+| `address` | [string](#string) | | address is the bech32 address string of the account with the funds. |
+| `amount` | [string](#string) | | amount is a Coins string of the funds placed on hold. |
+| `reason` | [string](#string) | | reason is a human-readable indicator of why this hold was added. |
-
+
-### GenesisState
-GenesisState defines the trigger module's genesis state.
+### EventHoldReleased
+EventHoldReleased is an event indicating that some funds were released from hold for an account.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `trigger_id` | [uint64](#uint64) | | Trigger id is the next auto incremented id to be assigned to the next created trigger |
-| `queue_start` | [uint64](#uint64) | | Queue start is the starting index of the queue. |
-| `triggers` | [Trigger](#provenance.trigger.v1.Trigger) | repeated | Triggers to initially start with. |
-| `gas_limits` | [GasLimit](#provenance.trigger.v1.GasLimit) | repeated | Maximum amount of gas that the triggers can use. |
-| `queued_triggers` | [QueuedTrigger](#provenance.trigger.v1.QueuedTrigger) | repeated | Triggers to initially start with in the queue. |
+| `address` | [string](#string) | | address is the bech32 address string of the account with the funds. |
+| `amount` | [string](#string) | | amount is a Coins string of the funds released from hold. |
@@ -11702,153 +12518,142 @@ GenesisState defines the trigger module's genesis state.
-
+
Top
-## provenance/trigger/v1/query.proto
+## provenance/hold/v1/hold.proto
-
+
-### QueryTriggerByIDRequest
-QueryTriggerByIDRequest queries for the Trigger with an identifier of id.
+### AccountHold
+AccountHold associates an address with an amount on hold for that address.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | The id of the trigger to query. |
+| `address` | [string](#string) | | address is the account address that holds the funds on hold. |
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the balances that are on hold for the address. |
+
-
+
-### QueryTriggerByIDResponse
-QueryTriggerByIDResponse contains the requested Trigger.
+
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `trigger` | [Trigger](#provenance.trigger.v1.Trigger) | | The trigger object that was queried for. |
+
+Top
+## provenance/hold/v1/query.proto
-
+
-### QueryTriggersRequest
-QueryTriggersRequest queries for all triggers.
+### GetAllHoldsRequest
+GetAllHoldsRequest is the request type for the Query/GetAllHolds query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
+| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos-base-query-v1beta1-PageRequest) | | pagination defines an optional pagination for the request. |
-
+
-### QueryTriggersResponse
-QueryTriggersResponse contains the list of Triggers.
+### GetAllHoldsResponse
+GetAllHoldsResponse is the response type for the Query/GetAllHolds query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `triggers` | [Trigger](#provenance.trigger.v1.Trigger) | repeated | List of Trigger objects. |
-| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines an optional pagination for the response. |
-
+| `holds` | [AccountHold](#provenance-hold-v1-AccountHold) | repeated | holds is a list of addresses with funds on hold and the amounts being held. |
+| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos-base-query-v1beta1-PageResponse) | | pagination defines an optional pagination for the request. |
-
-
-
-
-
-
-
-### Query
-Query defines the gRPC querier service for trigger module.
+
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `TriggerByID` | [QueryTriggerByIDRequest](#provenance.trigger.v1.QueryTriggerByIDRequest) | [QueryTriggerByIDResponse](#provenance.trigger.v1.QueryTriggerByIDResponse) | TriggerByID returns a trigger matching the ID. | GET|/provenance/trigger/v1/triggers/{id}|
-| `Triggers` | [QueryTriggersRequest](#provenance.trigger.v1.QueryTriggersRequest) | [QueryTriggersResponse](#provenance.trigger.v1.QueryTriggersResponse) | Triggers returns the list of triggers. | GET|/provenance/trigger/v1/triggers|
+### GetHoldsRequest
+GetHoldsRequest is the request type for the Query/GetHolds query.
-
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `address` | [string](#string) | | address is the account address to get on-hold balances for. |
-
-Top
-## provenance/trigger/v1/tx.proto
-
+
-### MsgCreateTriggerRequest
-MsgCreateTriggerRequest is the request type for creating a trigger RPC
+### GetHoldsResponse
+GetHoldsResponse is the response type for the Query/GetHolds query.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
-| `authorities` | [string](#string) | repeated | The signing authorities for the request |
-| `event` | [google.protobuf.Any](#google.protobuf.Any) | | The event that must be detected for the trigger to fire. |
-| `actions` | [google.protobuf.Any](#google.protobuf.Any) | repeated | The messages to run when the trigger fires. |
-
-
-
+| `amount` | [cosmos.base.v1beta1.Coin](#cosmos-base-v1beta1-Coin) | repeated | amount is the total on hold for the requested address. |
-
-### MsgCreateTriggerResponse
-MsgCreateTriggerResponse is the response type for creating a trigger RPC
+
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | trigger id that is generated on creation. |
+
+
+
+### Query
+Query defines the gRPC querier service for attribute module.
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
+| `GetHolds` | [GetHoldsRequest](#provenance-hold-v1-GetHoldsRequest) | [GetHoldsResponse](#provenance-hold-v1-GetHoldsResponse) | GetHolds looks up the funds that are on hold for an address. |
+| `GetAllHolds` | [GetAllHoldsRequest](#provenance-hold-v1-GetAllHoldsRequest) | [GetAllHoldsResponse](#provenance-hold-v1-GetAllHoldsResponse) | GetAllHolds returns all addresses with funds on hold, and the amount held. |
-
+
-### MsgDestroyTriggerRequest
-MsgDestroyTriggerRequest is the request type for creating a trigger RPC
-| Field | Type | Label | Description |
-| ----- | ---- | ----- | ----------- |
-| `id` | [uint64](#uint64) | | the id of the trigger to destroy. |
-| `authority` | [string](#string) | | The signing authority for the request |
+
+Top
+## provenance/hold/v1/genesis.proto
+
+### GenesisState
+GenesisState defines the attribute module's genesis state.
-
-### MsgDestroyTriggerResponse
-MsgDestroyTriggerResponse is the response type for creating a trigger RPC
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| `holds` | [AccountHold](#provenance-hold-v1-AccountHold) | repeated | holds defines the funds on hold at genesis. |
@@ -11860,17 +12665,6 @@ MsgDestroyTriggerResponse is the response type for creating a trigger RPC
-
-
-
-### Msg
-Msg
-
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
-| `CreateTrigger` | [MsgCreateTriggerRequest](#provenance.trigger.v1.MsgCreateTriggerRequest) | [MsgCreateTriggerResponse](#provenance.trigger.v1.MsgCreateTriggerResponse) | CreateTrigger is the RPC endpoint for creating a trigger | |
-| `DestroyTrigger` | [MsgDestroyTriggerRequest](#provenance.trigger.v1.MsgDestroyTriggerRequest) | [MsgDestroyTriggerResponse](#provenance.trigger.v1.MsgDestroyTriggerResponse) | DestroyTrigger is the RPC endpoint for creating a trigger | |
-
@@ -11894,4 +12688,3 @@ Msg
| bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |
-
diff --git a/docs/protodoc-markdown.tmpl b/docs/protodoc-markdown.tmpl
index 28201837e..055a0921f 100644
--- a/docs/protodoc-markdown.tmpl
+++ b/docs/protodoc-markdown.tmpl
@@ -1,24 +1,42 @@
-
-# Protobuf Documentation
+{{if false}}
+
+{{end}}
+# Provenance API Documentation
## Table of Contents
{{range .Files}}
-{{$file_name := .Name}}- [{{.Name}}](#{{.Name}})
+{{$file_name := .Name}}- [{{.Name}}](#{{.Name | anchor}})
{{- if .Messages }}
- {{range .Messages}} - [{{.LongName}}](#{{.FullName}})
+ {{range .Messages}} - [{{.LongName}}](#{{.FullName | anchor}})
{{end}}
{{- end -}}
{{- if .Enums }}
- {{range .Enums}} - [{{.LongName}}](#{{.FullName}})
+ {{range .Enums}} - [{{.LongName}}](#{{.FullName | anchor}})
{{end}}
{{- end -}}
{{- if .Extensions }}
- {{range .Extensions}} - [File-level Extensions](#{{$file_name}}-extensions)
+ {{range .Extensions}} - [File-level Extensions](#{{$file_name | anchor}}-extensions)
{{end}}
{{- end -}}
{{- if .Services }}
- {{range .Services}} - [{{.Name}}](#{{.FullName}})
+ {{range .Services}} - [{{.Name}}](#{{.FullName | anchor}})
{{end}}
{{- end -}}
{{end}}
@@ -26,14 +44,14 @@
{{range .Files}}
{{$file_name := .Name}}
-
+
Top
## {{.Name}}
{{.Description}}
{{range .Messages}}
-
+
### {{.LongName}}
{{.Description}}
@@ -42,7 +60,7 @@
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
{{range .Fields -}}
- | `{{.Name}}` | [{{.LongType}}](#{{.FullType}}) | {{.Label}} | {{if (index .Options "deprecated"|default false)}}**Deprecated.** {{end}}{{nobr .Description}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |
+ | `{{.Name}}` | [{{.LongType}}](#{{.FullType | anchor}}) | {{.Label}} | {{if (index .Options "deprecated"|default false)}}**Deprecated.** {{end}}{{nobr .Description | replace "\n\n" "
"}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |
{{end}}
{{end}}
@@ -50,14 +68,14 @@
| Extension | Type | Base | Number | Description |
| --------- | ---- | ---- | ------ | ----------- |
{{range .Extensions -}}
- | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |
+ | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description | replace "\n\n" "
"}}{{if .DefaultValue}} Default: {{.DefaultValue}}{{end}} |
{{end}}
{{end}}
{{end}}
{{range .Enums}}
-
+
### {{.LongName}}
{{.Description}}
@@ -65,32 +83,32 @@
| Name | Number | Description |
| ---- | ------ | ----------- |
{{range .Values -}}
- | {{.Name}} | {{.Number}} | {{nobr .Description}} |
+ | `{{.Name}}` | `{{.Number}}` | {{nobr .Description | replace "\n\n" "
"}} |
{{end}}
{{end}}
{{if .HasExtensions}}
-
+
### File-level Extensions
| Extension | Type | Base | Number | Description |
| --------- | ---- | ---- | ------ | ----------- |
{{range .Extensions -}}
- | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description}}{{if .DefaultValue}} Default: `{{.DefaultValue}}`{{end}} |
+ | `{{.Name}}` | {{.LongType}} | {{.ContainingLongType}} | {{.Number}} | {{nobr .Description | replace "\n\n" "
"}}{{if .DefaultValue}} Default: `{{.DefaultValue}}`{{end}} |
{{end}}
{{end}}
{{range .Services}}
-
+
### {{.Name}}
{{.Description}}
-| Method Name | Request Type | Response Type | Description | HTTP Verb | Endpoint |
-| ----------- | ------------ | ------------- | ------------| ------- | -------- |
+| Method Name | Request Type | Response Type | Description |
+| ----------- | ------------ | ------------- | ------------|
{{range .Methods -}}
- | `{{.Name}}` | [{{.RequestLongType}}](#{{.RequestFullType}}){{if .RequestStreaming}} stream{{end}} | [{{.ResponseLongType}}](#{{.ResponseFullType}}){{if .ResponseStreaming}} stream{{end}} | {{nobr .Description}} | {{with (index .Options "google.api.http")}}{{range .Rules}}{{.Method}}|{{.Pattern}}{{end}}{{end}}|
+ | `{{.Name}}` | [{{.RequestLongType}}](#{{.RequestFullType | anchor}}){{if .RequestStreaming}} stream{{end}} | [{{.ResponseLongType}}](#{{.ResponseFullType | anchor}}){{if .ResponseStreaming}} stream{{end}} | {{nobr .Description | replace "\n\n" "
"}} |
{{end}}
{{end}}
@@ -101,5 +119,5 @@
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |
{{range .Scalars -}}
- | {{.ProtoType}} | {{.Notes}} | {{.CppType}} | {{.JavaType}} | {{.PythonType}} | {{.GoType}} | {{.CSharp}} | {{.PhpType}} | {{.RubyType}} |
-{{end}}
+ | {{.ProtoType}} | {{.Notes}} | {{.CppType}} | {{.JavaType}} | {{.PythonType}} | {{.GoType}} | {{.CSharp}} | {{.PhpType}} | {{.RubyType}} |
+{{end}}
\ No newline at end of file
diff --git a/scripts/proto-doc-gen.sh b/scripts/proto-doc-gen.sh
new file mode 100755
index 000000000..46a310bbc
--- /dev/null
+++ b/scripts/proto-doc-gen.sh
@@ -0,0 +1,79 @@
+#!/usr/bin/env bash
+
+# Prerequisites:
+# - protoc: https://grpc.io/docs/protoc-installation/
+# - protoc-gen-doc: https://github.com/pseudomuto/protoc-gen-doc
+
+# Note:
+# I couldn't get this to work using the docker image.
+# Here's the command I think is the closest to what's needed:
+#
+# docker run --rm -v docs:/out -v .:/protos pseudomuto/protoc-gen-doc \
+# -I 'protos/proto' \
+# -I 'protos/third_party/proto' \
+# --doc_opt='./docs/protodoc-markdown.tmpl,proto-docs.md' \
+# $( find "proto" -name '*.proto' | sed 's/^/protos\//' )
+#
+# The problem with that is that the image's entrypoint invokes protoc with the -Iprotos option.
+# That ends up giving protoc all the protos twice, so it complains about everything being defined twice.
+# If I try to use our proto dir for the /protos volume (-v proto:/protos), it complains about not finding
+# the third_party stuff. If I leave off either -I "protos/proto" or -I "protos/third_party/proto" it
+# complains about things not being found.
+
+ec=0
+
+if ! command -v protoc > /dev/null 2>&1; then
+ printf 'Command not found: protoc\n' >&2
+ printf 'See: https://grpc.io/docs/protoc-installation/\n' >&2
+ ec=1
+fi
+
+if ! command -v protoc-gen-doc > /dev/null 2>&1; then
+ printf 'Plugin not found: protoc-gen-doc\n' >&2
+ printf 'See: https://github.com/pseudomuto/protoc-gen-doc\n' >&2
+ ec=1
+fi
+
+if [ "$ec" != '0' ]; then
+ exit "$ec"
+fi
+
+# It's assumed that this script is in //proto-doc-gen.sh.
+# We need to be in for this to work, so start where this script is and go up one.
+where_i_am="$( cd "$( dirname "${BASH_SOURCE:-$0}" )" || exit $?; pwd -P )" || ec=$?
+if [ -z "$where_i_am" ] || [ "$ec" != '0' ]; then
+ printf 'Could not identify where this script is located: %s\n' "$0" >&2
+ ec=1
+fi
+
+cd "$where_i_am/.." || ec=$?
+if [ "$ec" != '0' ]; then
+ printf 'Could not cd %s\n' "$where_i_am/.." >&2
+ exit 1
+fi
+
+if ! [ -d ./proto ]; then
+ printf 'Directory not found: ./proto\n' >&2
+ ec=1
+fi
+if ! [ -d ./third_party ]; then
+ printf 'Directory not found: ./third_party\n' >&2
+ ec=1
+fi
+if ! [ -f ./docs/protodoc-markdown.tmpl ]; then
+ printf 'File not found: ./docs/protodoc-markdown.tmpl\n' >&2
+ ec=1
+fi
+
+if [ "$ec" != '0' ]; then
+ printf 'Base directory . = %s\n' "`pwd`" >&2
+ exit "$ec"
+fi
+
+# Generate the docs/proto-docs.md file.
+protoc \
+ -I "proto" \
+ -I "third_party/proto" \
+ --doc_out=./docs \
+ --doc_opt=./docs/protodoc-markdown.tmpl,proto-docs.md \
+ $( find "proto" -name '*.proto' )
\ No newline at end of file