Sui · Schema

Sui JSON-RPC Schemas

All component schemas from the Sui JSON-RPC OpenRPC specification

BlockchainMoveWeb3CryptocurrencySmart Contracts
View JSON Schema on GitHub

JSON Schema

sui-schemas.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/sui/main/json-schema/sui-schemas.json",
  "title": "Sui JSON-RPC Schemas",
  "description": "All component schemas from the Sui JSON-RPC OpenRPC specification",
  "definitions": {
    "AccumulatorEvent": {
      "type": "object",
      "required": [
        "accumulatorObj",
        "address",
        "operation",
        "ty",
        "value"
      ],
      "properties": {
        "accumulatorObj": {
          "$ref": "#/components/schemas/ObjectID"
        },
        "address": {
          "$ref": "#/components/schemas/SuiAddress"
        },
        "operation": {
          "$ref": "#/components/schemas/AccumulatorOperation"
        },
        "ty": {
          "$ref": "#/components/schemas/TypeTag"
        },
        "value": {
          "$ref": "#/components/schemas/AccumulatorValue"
        }
      }
    },
    "AccumulatorOperation": {
      "type": "string",
      "enum": [
        "merge",
        "split"
      ]
    },
    "AccumulatorValue": {
      "oneOf": [
        {
          "type": "object",
          "required": [
            "integer"
          ],
          "properties": {
            "integer": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "integerTuple"
          ],
          "properties": {
            "integerTuple": {
              "type": "array",
              "items": [
                {
                  "type": "integer",
                  "format": "uint64",
                  "minimum": 0.0
                },
                {
                  "type": "integer",
                  "format": "uint64",
                  "minimum": 0.0
                }
              ],
              "maxItems": 2,
              "minItems": 2
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "eventDigest"
          ],
          "properties": {
            "eventDigest": {
              "type": "array",
              "items": {
                "type": "array",
                "items": [
                  {
                    "type": "integer",
                    "format": "uint64",
                    "minimum": 0.0
                  },
                  {
                    "$ref": "#/components/schemas/Digest"
                  }
                ],
                "maxItems": 2,
                "minItems": 2
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "AdditionalConsensusStateDigest": {
      "$ref": "#/components/schemas/Digest"
    },
    "AuthorityPublicKeyBytes": {
      "description": "Defines the compressed version of the public key that we pass around in Sui",
      "allOf": [
        {
          "$ref": "#/components/schemas/Base64"
        }
      ]
    },
    "Balance": {
      "type": "object",
      "required": [
        "coinObjectCount",
        "coinType",
        "lockedBalance",
        "totalBalance"
      ],
      "properties": {
        "coinObjectCount": {
          "type": "integer",
          "format": "uint",
          "minimum": 0.0
        },
        "coinType": {
          "type": "string"
        },
        "fundsInAddressBalance": {
          "description": "The portion of `total_balance` that resides in the address balance rather than in the coin objects. `total_balance` is the total amount of funds owned by the address. That is, do not add these two fields together.",
          "default": "0",
          "allOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint128"
            }
          ]
        },
        "lockedBalance": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/BigInt_for_uint128"
          }
        },
        "totalBalance": {
          "$ref": "#/components/schemas/BigInt_for_uint128"
        }
      }
    },
    "BalanceChange": {
      "type": "object",
      "required": [
        "amount",
        "coinType",
        "owner"
      ],
      "properties": {
        "amount": {
          "description": "The amount indicate the balance value changes, negative amount means spending coin value and positive means receiving coin value.",
          "type": "string"
        },
        "coinType": {
          "type": "string"
        },
        "owner": {
          "description": "Owner of the balance change",
          "allOf": [
            {
              "$ref": "#/components/schemas/Owner"
            }
          ]
        }
      }
    },
    "Base58": {
      "type": "string"
    },
    "Base64": {
      "description": "Base64 encoding",
      "type": "string"
    },
    "BigInt_for_uint128": {
      "type": "string"
    },
    "BigInt_for_uint16": {
      "type": "string"
    },
    "BigInt_for_uint32": {
      "type": "string"
    },
    "BigInt_for_uint64": {
      "type": "string"
    },
    "Bn254FqElement": {
      "description": "A struct that stores a Bn254 Fq field element as 32 bytes.",
      "type": "string"
    },
    "Bn254FrElement": {
      "description": "A struct that stores a Bn254 Fr field element as 32 bytes.",
      "type": "string"
    },
    "Checkpoint": {
      "type": "object",
      "required": [
        "checkpointCommitments",
        "digest",
        "epoch",
        "epochRollingGasCostSummary",
        "networkTotalTransactions",
        "sequenceNumber",
        "timestampMs",
        "transactions",
        "validatorSignature"
      ],
      "properties": {
        "checkpointCommitments": {
          "description": "Commitments to checkpoint state",
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/CheckpointCommitment"
          }
        },
        "digest": {
          "description": "Checkpoint digest",
          "allOf": [
            {
              "$ref": "#/components/schemas/CheckpointDigest"
            }
          ]
        },
        "endOfEpochData": {
          "description": "Present only on the final checkpoint of the epoch.",
          "anyOf": [
            {
              "$ref": "#/components/schemas/EndOfEpochData"
            },
            {
              "type": "null"
            }
          ]
        },
        "epoch": {
          "description": "Checkpoint's epoch ID",
          "allOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            }
          ]
        },
        "epochRollingGasCostSummary": {
          "description": "The running total gas costs of all transactions included in the current epoch so far until this checkpoint.",
          "allOf": [
            {
              "$ref": "#/components/schemas/GasCostSummary"
            }
          ]
        },
        "networkTotalTransactions": {
          "description": "Total number of transactions committed since genesis, including those in this checkpoint.",
          "allOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            }
          ]
        },
        "previousDigest": {
          "description": "Digest of the previous checkpoint",
          "anyOf": [
            {
              "$ref": "#/components/schemas/CheckpointDigest"
            },
            {
              "type": "null"
            }
          ]
        },
        "sequenceNumber": {
          "description": "Checkpoint sequence number",
          "allOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            }
          ]
        },
        "timestampMs": {
          "description": "Timestamp of the checkpoint - number of milliseconds from the Unix epoch Checkpoint timestamps are monotonic, but not strongly monotonic - subsequent checkpoints can have same timestamp if they originate from the same underlining consensus commit",
          "allOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            }
          ]
        },
        "transactions": {
          "description": "Transaction digests",
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/TransactionDigest"
          }
        },
        "validatorSignature": {
          "description": "Validator Signature",
          "allOf": [
            {
              "$ref": "#/components/schemas/Base64"
            }
          ]
        }
      }
    },
    "CheckpointArtifactsDigest": {
      "$ref": "#/components/schemas/Digest"
    },
    "CheckpointCommitment": {
      "oneOf": [
        {
          "type": "object",
          "required": [
            "ECMHLiveObjectSetDigest"
          ],
          "properties": {
            "ECMHLiveObjectSetDigest": {
              "$ref": "#/components/schemas/ECMHLiveObjectSetDigest"
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "CheckpointArtifactsDigest"
          ],
          "properties": {
            "CheckpointArtifactsDigest": {
              "$ref": "#/components/schemas/CheckpointArtifactsDigest"
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "CheckpointDigest": {
      "description": "Representation of a Checkpoint's digest",
      "allOf": [
        {
          "$ref": "#/components/schemas/Digest"
        }
      ]
    },
    "CheckpointId": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/BigInt_for_uint64"
        },
        {
          "$ref": "#/components/schemas/CheckpointDigest"
        }
      ]
    },
    "Claim": {
      "description": "A claim consists of value and index_mod_4.",
      "type": "object",
      "required": [
        "indexMod4",
        "value"
      ],
      "properties": {
        "indexMod4": {
          "type": "integer",
          "format": "uint8",
          "minimum": 0.0
        },
        "value": {
          "type": "string"
        }
      }
    },
    "Coin": {
      "type": "object",
      "required": [
        "balance",
        "coinObjectId",
        "coinType",
        "digest",
        "previousTransaction",
        "version"
      ],
      "properties": {
        "balance": {
          "$ref": "#/components/schemas/BigInt_for_uint64"
        },
        "coinObjectId": {
          "$ref": "#/components/schemas/ObjectID"
        },
        "coinType": {
          "type": "string"
        },
        "digest": {
          "$ref": "#/components/schemas/ObjectDigest"
        },
        "previousTransaction": {
          "$ref": "#/components/schemas/TransactionDigest"
        },
        "version": {
          "$ref": "#/components/schemas/SequenceNumber"
        }
      }
    },
    "CommitteeInfo": {
      "description": "RPC representation of the [Committee] type.",
      "type": "object",
      "required": [
        "epoch",
        "validators"
      ],
      "properties": {
        "epoch": {
          "$ref": "#/components/schemas/BigInt_for_uint64"
        },
        "validators": {
          "type": "array",
          "items": {
            "type": "array",
            "items": [
              {
                "$ref": "#/components/schemas/AuthorityPublicKeyBytes"
              },
              {
                "$ref": "#/components/schemas/BigInt_for_uint64"
              }
            ],
            "maxItems": 2,
            "minItems": 2
          }
        }
      }
    },
    "CompressedSignature": {
      "description": "Unlike [enum Signature], [enum CompressedSignature] does not contain public key.",
      "oneOf": [
        {
          "type": "object",
          "required": [
            "Ed25519"
          ],
          "properties": {
            "Ed25519": {
              "$ref": "#/components/schemas/Base64"
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "Secp256k1"
          ],
          "properties": {
            "Secp256k1": {
              "$ref": "#/components/schemas/Base64"
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "Secp256r1"
          ],
          "properties": {
            "Secp256r1": {
              "$ref": "#/components/schemas/Base64"
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "ZkLogin"
          ],
          "properties": {
            "ZkLogin": {
              "$ref": "#/components/schemas/ZkLoginAuthenticatorAsBytes"
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "Passkey"
          ],
          "properties": {
            "Passkey": {
              "$ref": "#/components/schemas/PasskeyAuthenticatorAsBytes"
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "ConsensusCommitDigest": {
      "$ref": "#/components/schemas/Digest"
    },
    "ConsensusDeterminedVersionAssignments": {
      "oneOf": [
        {
          "type": "object",
          "required": [
            "CancelledTransactions"
          ],
          "properties": {
            "CancelledTransactions": {
              "type": "array",
              "items": {
                "type": "array",
                "items": [
                  {
                    "$ref": "#/components/schemas/TransactionDigest"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": [
                        {
                          "$ref": "#/components/schemas/ObjectID"
                        },
                        {
                          "$ref": "#/components/schemas/SequenceNumber2"
                        }
                      ],
                      "maxItems": 2,
                      "minItems": 2
                    }
                  }
                ],
                "maxItems": 2,
                "minItems": 2
              }
            }
          },
          "additionalProperties": false
        },
        {
          "type": "object",
          "required": [
            "CancelledTransactionsV2"
          ],
          "properties": {
            "CancelledTransactionsV2": {
              "type": "array",
              "items": {
                "type": "array",
                "items": [
                  {
                    "$ref": "#/components/schemas/TransactionDigest"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": [
                        {
                          "type": "array",
                          "items": [
                            {
                              "$ref": "#/components/schemas/ObjectID"
                            },
                            {
                              "$ref": "#/components/schemas/SequenceNumber2"
                            }
                          ],
                          "maxItems": 2,
                          "minItems": 2
                        },
                        {
                          "$ref": "#/components/schemas/SequenceNumber2"
                        }
                      ],
                      "maxItems": 2,
                      "minItems": 2
                    }
                  }
                ],
                "maxItems": 2,
                "minItems": 2
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "Data": {
      "oneOf": [
        {
          "type": "object",
          "required": [
            "dataType",
            "fields",
            "hasPublicTransfer",
            "type"
          ],
          "properties": {
            "dataType": {
              "type": "string",
              "enum": [
                "moveObject"
              ]
            },
            "fields": {
              "$ref": "#/components/schemas/MoveStruct"
            },
            "hasPublicTransfer": {
              "type": "boolean"
            },
            "type": {
              "type": "string"
            }
          }
        },
        {
          "type": "object",
          "required": [
            "dataType",
            "disassembled"
          ],
          "properties": {
            "dataType": {
              "type": "string",
              "enum": [
                "package"
              ]
            },
            "disassembled": {
              "type": "object",
              "additionalProperties": true
            }
          }
        }
      ]
    },
    "DelegatedStake": {
      "type": "object",
      "required": [
        "stakes",
        "stakingPool",
        "validatorAddress"
      ],
      "properties": {
        "stakes": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Stake"
          }
        },
        "stakingPool": {
          "description": "Staking pool object id.",
          "allOf": [
            {
              "$ref": "#/components/schemas/ObjectID"
            }
          ]
        },
        "validatorAddress": {
          "description": "Validator's Address.",
          "allOf": [
            {
              "$ref": "#/components/schemas/SuiAddress"
            }
          ]
        }
      }
    },
    "DevInspectArgs": {
      "description": "Additional rguments supplied to dev inspect beyond what is allowed in today's API.",
      "type": "object",
      "properties": {
        "gasBudget": {
          "description": "The gas budget for the transaction.",
          "anyOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            },
            {
              "type": "null"
            }
          ]
        },
        "gasObjects": {
          "description": "The gas objects used to pay for the transaction.",
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "array",
            "items": [
              {
                "$ref": "#/components/schemas/ObjectID"
              },
              {
                "$ref": "#/components/schemas/SequenceNumber2"
              },
              {
                "$ref": "#/components/schemas/ObjectDigest"
              }
            ],
            "maxItems": 3,
            "minItems": 3
          }
        },
        "gasSponsor": {
          "description": "The sponsor of the gas for the transaction, might be different from the sender.",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SuiAddress"
            },
            {
              "type": "null"
            }
          ]
        },
        "showRawTxnDataAndEffects": {
          "description": "Whether to return the raw transaction data and effects.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "skipChecks": {
          "description": "Whether to skip transaction checks for the transaction.",
          "type": [
            "boolean",
            "null"
          ]
        }
      }
    },
    "DevInspectResults": {
      "description": "The response from processing a dev inspect transaction",
      "type": "object",
      "required": [
        "effects",
        "events"
      ],
      "properties": {
        "effects": {
          "description": "Summary of effects that likely would be generated if the transaction is actually run. Note however, that not all dev-inspect transactions are actually usable as transactions so it might not be possible actually generate these effects from a normal transaction.",
          "allOf": [
            {
              "$ref": "#/components/schemas/TransactionBlockEffects"
            }
          ]
        },
        "error": {
          "description": "Execution error from executing the transactions",
          "type": [
            "string",
            "null"
          ]
        },
        "events": {
          "description": "Events that likely would be generated if the transaction is actually run.",
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Event"
          }
        },
        "rawEffects": {
          "description": "The raw effects of the transaction that was dev inspected.",
          "type": "array",
          "items": {
            "type": "integer",
            "format": "uint8",
            "minimum": 0.0
          }
        },
        "rawTxnData": {
          "description": "The raw transaction data that was dev inspected.",
          "type": "array",
          "items": {
            "type": "integer",
            "format": "uint8",
            "minimum": 0.0
          }
        },
        "results": {
          "description": "Execution results (including return values) from executing the transactions",
          "type": [
            "array",
            "null"
          ],
          "items": {
            "$ref": "#/components/schemas/SuiExecutionResult"
          }
        }
      }
    },
    "Digest": {
      "description": "A representation of a 32 byte digest",
      "allOf": [
        {
          "$ref": "#/components/schemas/Base58"
        }
      ]
    },
    "DisplayFieldsResponse": {
      "type": "object",
      "properties": {
        "data": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": {
            "type": "string"
          }
        },
        "error": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/ObjectResponseError"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    "DryRunTransactionBlockResponse": {
      "type": "object",
      "required": [
        "balanceChanges",
        "effects",
        "events",
        "input",
        "objectChanges"
      ],
      "properties": {
        "balanceChanges": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/BalanceChange"
          }
        },
        "effects": {
          "$ref": "#/components/schemas/TransactionBlockEffects"
        },
        "events": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Event"
          }
        },
        "executionErrorSource": {
          "type": [
            "string",
            "null"
          ]
        },
        "input": {
          "$ref": "#/components/schemas/TransactionBlockData"
        },
        "objectChanges": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ObjectChange"
          }
        },
        "suggestedGasPrice": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    "DynamicFieldInfo": {
      "type": "object",
      "oneOf": [
        {
          "type": "object",
          "required": [
            "bcsEncoding",
            "bcsName"
          ],
          "properties": {
            "bcsEncoding": {
              "type": "string",
              "enum": [
                "base64"
              ]
            },
            "bcsName": {
              "$ref": "#/components/schemas/Base64"
            }
          }
        },
        {
          "type": "object",
          "required": [
            "bcsEncoding",
            "bcsName"
          ],
          "properties": {
            "bcsEncoding": {
              "type": "string",
              "enum": [
                "base58"
              ]
            },
            "bcsName": {
              "$ref": "#/components/schemas/Base58"
            }
          }
        }
      ],
      "required": [
        "digest",
        "name",
        "objectId",
        "objectType",
        "type",
        "version"
      ],
      "properties": {
        "digest": {
          "$ref": "#/components/schemas/ObjectDigest"
        },
        "name": {
          "$ref": "#/components/schemas/DynamicFieldName"
        },
        "objectId": {
          "$ref": "#/components/schemas/ObjectID"
        },
        "objectType": {
          "type": "string"
        },
        "type": {
          "$ref": "#/components/schemas/DynamicFieldType"
        },
        "version": {
          "$ref": "#/components/schemas/SequenceNumber2"
        }
      }
    },
    "DynamicFieldName": {
      "type": "object",
      "required": [
        "type",
        "value"
      ],
      "properties": {
        "type": {
          "type": "string"
        },
        "value": true
      }
    },
    "DynamicFieldType": {
      "type": "string",
      "enum": [
        "DynamicField",
        "DynamicObject"
      ]
    },
    "ECMHLiveObjectSetDigest": {
      "description": "The Sha256 digest of an EllipticCurveMultisetHash committing to the live object set.",
      "type": "object",
      "required": [
        "digest"
      ],
      "properties": {
        "digest": {
          "type": "array",
          "items": {
            "type": "integer",
            "format": "uint8",
            "minimum": 0.0
          },
          "maxItems": 32,
          "minItems": 32
        }
      }
    },
    "Ed25519SuiSignature": {
      "$ref": "#/components/schemas/Base64"
    },
    "EndOfEpochData": {
      "type": "object",
      "required": [
        "epochCommitments",
        "nextEpochCommittee",
        "nextEpochProtocolVersion"
      ],
      "properties": {
        "epochCommitments": {
          "description": "Commitments to epoch specific state (e.g. live object set)",
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/CheckpointCommitment"
          }
        },
        "nextEpochCommittee": {
          "description": "next_epoch_committee is `Some` if and only if the current checkpoint is the last checkpoint of an epoch. Therefore next_epoch_committee can be used to pick the last checkpoint of an epoch, which is often useful to get epoch level summary stats like total gas cost of an epoch, or the total number of transactions from genesis to the end of an epoch. The committee is stored as a vector of validator pub key and stake pairs. The vector should be sorted based on the Committee data structure.",
          "type": "array",
          "items": {
            "type": "array",
            "items": [
              {
                "$ref": "#/components/schemas/AuthorityPublicKeyBytes"
              },
              {
                "$ref": "#/components/schemas/BigInt_for_uint64"
              }
            ],
            "maxItems": 2,
            "minItems": 2
          }
        },
        "nextEpochProtocolVersion": {
          "description": "The protocol version that is in effect during the epoch that starts immediately after this checkpoint.",
          "allOf": [
            {
              "$ref": "#/components/schemas/ProtocolVersion"
            }
          ]
        }
      }
    },
    "Event": {
      "type": "object",
      "oneOf": [
        {
          "type": "object",
          "required": [
            "bcs",
            "bcsEncoding"
          ],
          "properties": {
            "bcs": {
              "$ref": "#/components/schemas/Base64"
            },
            "bcsEncoding": {
              "type": "string",
              "enum": [
                "base64"
              ]
            }
          }
        },
        {
          "type": "object",
          "required": [
            "bcs",
            "bcsEncoding"
          ],
          "properties": {
            "bcs": {
              "$ref": "#/components/schemas/Base58"
            },
            "bcsEncoding": {
              "type": "string",
              "enum": [
                "base58"
              ]
            }
          }
        }
      ],
      "required": [
        "id",
        "packageId",
        "parsedJson",
        "sender",
        "transactionModule",
        "type"
      ],
      "properties": {
        "id": {
          "description": "Sequential event ID, ie (transaction seq number, event seq number). 1) Serves as a unique event ID for each fullnode 2) Also serves to sequence events for the purposes of pagination and querying. A higher id is an event seen later by that fullnode. This ID is the \"cursor\" for event querying.",
          "allOf": [
            {
              "$ref": "#/components/schemas/EventID"
            }
          ]
        },
        "packageId": {
          "description": "Move package where this event was emitted.",
          "allOf": [
            {
              "$ref": "#/components/schemas/ObjectID"
            }
          ]
        },
        "parsedJson": {
          "description": "Parsed json value of the event"
        },
        "sender": {
          "description": "Sender's Sui address.",
          "allOf": [
            {
              "$ref": "#/components/schemas/SuiAddress"
            }
          ]
        },
        "timestampMs": {
          "description": "UTC timestamp in milliseconds since epoch (1/1/1970)",
          "anyOf": [
            {
              "$ref": "#/components/schemas/BigInt_for_uint64"
            },
            {
              "type": "null"
            }
          ]
        },
        "transactionModule": {
          "description": "Move module where this event was emitted.",
          "type": "string"
        },
        "type": {
          "description": "Move event type.",
          "type": "string"
        }
      }
    },
    "EventFilter": {
      "oneOf": [
        {
          "description": "Return all events.",
          "type": "object",
          "required": [
            "All"
          ],
          "properties": {
            "All": {
              "type": "array",
              "maxItems": 0
            }
          },
          "additionalProperties": false
        },
        {
          "description": "Return events that match any of the given filters. Only supported on event subscriptions.",
          "type": "object",
          "required": [
            "Any"
          ],
          "properties": {
            "Any": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/EventFilter"
              }
            }
          },
          "additionalProperties": false
        },
        {
          "description": "Query by sender address.",
          "type": "object",
          "required": [
            "Sender"
          ],
          "properties": {
            "Sender": {
              "$ref": "#/components/schemas/SuiAddress"
            }
          },
          "additionalProperties": false
        },
        {
          "description": "Return events emitted by the given transaction.",
          "type": "object",
          "required": [
            "Transaction"
          ],
          "properties": {
            "Transaction": {
              "$ref": "#/components/schemas/TransactionDigest"
            }
          },
          "additionalProperties": false
        },
        {
          "description": "Return events emitted in a specified Move module. If the event is defined in Module A but emitted in a tx with Module B, query `MoveModule` by module B returns the event. Query `MoveEventModule` by module A returns the event too.",
          "type": "object",
          "required": [
            "MoveModule"
          ],
          "properties": {
            "MoveModule": {
              "type": "object",
              "required": [
                "module",
                "package"
              ],
              "properties": {
                "module": {
                  "description": "the module name",
                  "type": "string"
                },
                "package": {
                  "description": "the Move package ID",
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/O

# --- truncated at 32 KB (171 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sui/refs/heads/main/json-schema/sui-schemas.json