Sui

Sui Read API API

Methods for reading blockchain state

OpenAPI Specification

sui-read-api-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Sui JSON-RPC Coin Query API Read API API
  description: Sui JSON-RPC API for interaction with Sui Full node. Make RPC calls using https://fullnode.NETWORK.sui.io:443, where NETWORK is the network you want to use (testnet, devnet, mainnet). By default, local networks use port 9000.
  contact:
    name: Mysten Labs
    url: https://mystenlabs.com
    email: build@mystenlabs.com
  license:
    name: Apache-2.0
    url: https://raw.githubusercontent.com/MystenLabs/sui/main/LICENSE
  version: 1.74.0
servers:
- url: https://fullnode.mainnet.sui.io:443
  description: Sui Mainnet
- url: https://fullnode.testnet.sui.io:443
  description: Sui Testnet
- url: https://fullnode.devnet.sui.io:443
  description: Sui Devnet
- url: http://localhost:9000
  description: Local node (default port)
tags:
- name: Read API
  description: Methods for reading blockchain state
paths:
  /#sui_getChainIdentifier:
    post:
      operationId: sui_getChainIdentifier
      summary: sui_getChainIdentifier
      description: Return the first four bytes of the chain's genesis checkpoint digest.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getChainIdentifier
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getChainIdentifier
                  params: []
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getCheckpoint:
    post:
      operationId: sui_getCheckpoint
      summary: sui_getCheckpoint
      description: Return a checkpoint
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getCheckpoint
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getCheckpoint
                  params:
                  - '1000'
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/Checkpoint'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getCheckpoints:
    post:
      operationId: sui_getCheckpoints
      summary: sui_getCheckpoints
      description: Return paginated list of checkpoints
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getCheckpoints
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getCheckpoints
                  params:
                  - '1004'
                  - 4
                  - false
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/Page_for_Checkpoint_and_BigInt_for_uint64'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getEvents:
    post:
      operationId: sui_getEvents
      summary: sui_getEvents
      description: Return transaction events.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getEvents
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getEvents
                  params:
                  - 11a72GCQ5hGNpWGh2QhQkkusTEGS6EDqifJqxr7nSYX
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/Event'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getLatestCheckpointSequenceNumber:
    post:
      operationId: sui_getLatestCheckpointSequenceNumber
      summary: sui_getLatestCheckpointSequenceNumber
      description: Return the sequence number of the latest checkpoint that has been executed
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getLatestCheckpointSequenceNumber
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getLatestCheckpointSequenceNumber
                  params: []
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/BigInt_for_uint64'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getObject:
    post:
      operationId: sui_getObject
      summary: sui_getObject
      description: Return the object information for a specified object
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getObject
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getObject
                  params:
                  - '0x53e4567ccafa5f36ce84c80aa8bc9be64e0d5ae796884274aef3005ae6733809'
                  - showType: true
                    showOwner: true
                    showPreviousTransaction: true
                    showDisplay: false
                    showContent: true
                    showBcs: false
                    showStorageRebate: true
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/SuiObjectResponse'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getProtocolConfig:
    post:
      operationId: sui_getProtocolConfig
      summary: sui_getProtocolConfig
      description: Return the protocol config table for the given version number. If none is specified, the node uses the version of the latest epoch it has processed.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getProtocolConfig
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getProtocolConfig
                  params:
                  - 6
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/ProtocolConfig'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getTotalTransactionBlocks:
    post:
      operationId: sui_getTotalTransactionBlocks
      summary: sui_getTotalTransactionBlocks
      description: Return the total number of transaction blocks known to the server.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getTotalTransactionBlocks
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getTotalTransactionBlocks
                  params: []
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/BigInt_for_uint64'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_getTransactionBlock:
    post:
      operationId: sui_getTransactionBlock
      summary: sui_getTransactionBlock
      description: Return the transaction response object.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_getTransactionBlock
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_getTransactionBlock
                  params:
                  - Hay2tj3GcDYcE3AMHrej5WDsHGPVAYsegcubixLUvXUF
                  - showInput: true
                    showRawInput: false
                    showEffects: true
                    showEvents: true
                    showObjectChanges: false
                    showBalanceChanges: false
                    showRawEffects: false
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/TransactionBlockResponse'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_multiGetObjects:
    post:
      operationId: sui_multiGetObjects
      summary: sui_multiGetObjects
      description: Return the object data for a list of objects
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_multiGetObjects
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_multiGetObjects
                  params:
                  - - '0x77b3482580ee8d5bdc5b824808df54bfec4fc817622e5add0e48f749f01def98'
                    - '0x9060d87664c26a3f9a509228c21b16dc6797cf787c839a07edc03e6338421091'
                    - '0xb37379c527753c5c8ab783f697e7b61439368cd75ebe63d633af32ffb4a022d1'
                    - '0xee309e94ff5c9f6b02c5637f018f6ea7bed8f6c3d80f2a595c2305e12dd6d07c'
                    - '0x29bc7c8d230db3b417edb1184cf075da5e934f672d3da3e003d989075efaecc7'
                  - showType: true
                    showOwner: true
                    showPreviousTransaction: true
                    showDisplay: false
                    showContent: true
                    showBcs: false
                    showStorageRebate: true
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/SuiObjectResponse'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_multiGetTransactionBlocks:
    post:
      operationId: sui_multiGetTransactionBlocks
      summary: sui_multiGetTransactionBlocks
      description: Returns an ordered list of transaction responses The method will throw an error if the input contains any duplicate or the input size exceeds QUERY_MAX_RESULT_LIMIT
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_multiGetTransactionBlocks
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_multiGetTransactionBlocks
                  params:
                  - - EMqJqkQip6UaTkdff493ewAQNHGQFJwXDDn6m9CTgZzo
                    - Hn3B25vTQNTFAdThFkWvfkiAAUZxzwTaj4uEengu1ACX
                    - 9vLSG9a4QcLcMdG1xCu6FRdXAjWWqvJHoHBCJfPMKkR9
                  - showInput: true
                    showRawInput: false
                    showEffects: true
                    showEvents: true
                    showObjectChanges: false
                    showBalanceChanges: false
                    showRawEffects: false
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/TransactionBlockResponse'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_tryGetPastObject:
    post:
      operationId: sui_tryGetPastObject
      summary: sui_tryGetPastObject
      description: Note there is no software-level guarantee/SLA that objects with past versions can be retrieved by this API, even if the object and version exists/existed. The result may vary across nodes depending on their pruning policies. Return the object information for a specified version
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_tryGetPastObject
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_tryGetPastObject
                  params:
                  - '0x11af4b844ff94b3fbef6e36b518da3ad4c5856fa686464524a876b463d129760'
                  - 4
                  - showType: true
                    showOwner: true
                    showPreviousTransaction: true
                    showDisplay: false
                    showContent: true
                    showBcs: false
                    showStorageRebate: true
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/ObjectRead'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_tryMultiGetPastObjects:
    post:
      operationId: sui_tryMultiGetPastObjects
      summary: sui_tryMultiGetPastObjects
      description: Note there is no software-level guarantee/SLA that objects with past versions can be retrieved by this API, even if the object and version exists/existed. The result may vary across nodes depending on their pruning policies. Return the object information for a specified version
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_tryMultiGetPastObjects
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples:
              example:
                value:
                  jsonrpc: '2.0'
                  id: 1
                  method: sui_tryMultiGetPastObjects
                  params:
                  - - objectId: '0x38b3186a7bb26a1ab2c982a0a9b482aa70f5a010fffc60f20194ef0f597474e8'
                      version: '4'
                    - objectId: '0xceaf9ee4582d3a233101e322a22cb2a5bea2e681ea5af4e59bd1abb0bb4fcb27'
                      version: '12'
                  - showType: true
                    showOwner: true
                    showPreviousTransaction: true
                    showDisplay: false
                    showContent: true
                    showBcs: false
                    showStorageRebate: true
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/ObjectRead'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /#sui_verifyZkLoginSignature:
    post:
      operationId: sui_verifyZkLoginSignature
      summary: sui_verifyZkLoginSignature
      description: Verify a zklogin signature for the given bytes, intent scope and author.
      tags:
      - Read API
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  example: '2.0'
                id:
                  type: integer
                  example: 1
                method:
                  type: string
                  enum:
                  - sui_verifyZkLoginSignature
                params:
                  type: array
                  description: Parameters as positional array
                  items: {}
            examples: {}
      responses:
        '200':
          description: JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    enum:
                    - '2.0'
                  id:
                    type: integer
                  result:
                    $ref: '#/components/schemas/ZkLoginVerifyResult'
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
components:
  schemas:
    ZkLoginAuthenticatorAsBytes:
      $ref: '#/components/schemas/Base64'
    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:
          descript

# --- truncated at 32 KB (101 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sui/refs/heads/main/openapi/sui-read-api-api-openapi.yml