For the complete documentation index, see llms.txt. This page is also available as Markdown.

Get Object

Request

Similar to call contract on the EVM, get object is used to read state of the blockchain.

There are two params

  • chain - mainnet testnet devnet localnet

  • id - A 32-byte globally unique ID. This is used to query the current state of an object or describing which object was transferred between two addresses.

curl --location 'localhost:9680/sui/getObject' \
--header 'Content-Type: application/json' \
--data '{
    "chain": "testnet",
    "id": "0xa1fc3811720a381e2d55cc620c5514116c5254e2bdc72fda2af341fd0998029a"
}'
using System.Collections;
using UnityEngine;
using UnityEngine.Networking;

public class GetAccounts: MonoBehaviour
{
    void Start()
    {
        StartCoroutine(Accounts());
    }

    private IEnumerator Accounts()
    {
        string jsonString = "{ \"chain\": \"testnet\", \"id\": \"0xa1fc3811720a381e2d55cc620c5514116c5254e2bdc72fda2af341fd0998029a\" }";
        
        byte[] jsonBytes = System.Text.Encoding.UTF8.GetBytes(jsonString);

        UnityWebRequest request = new UnityWebRequest("localhost:9680/sui/getObject", "POST");
        request.uploadHandler = new UploadHandlerRaw(jsonBytes);
        request.downloadHandler = new DownloadHandlerBuffer();
        request.SetRequestHeader("Content-Type", "application/json");

        yield return request.SendWebRequest();
        Debug.Log(request.error);
        Debug.Log(request.downloadHandler.text);
    }
}

Response

{
    "dataType": "moveObject",
    "type": "0x5f1cbf91020e986d82493bbb8d0efab99c848d5e5fa1eec71faf2db725e2c5f7::counter::Counter",
    "hasPublicTransfer": false,
    "fields": {
        "id": {
            "id": "0xa1fc3811720a381e2d55cc620c5514116c5254e2bdc72fda2af341fd0998029a"
        },
        "owner": "0x78687cc53c07484da514ca3d024d06274c9d079def21ece23a553a17397014a6",
        "value": "5"
    }
}
{
  "message": "error description here"
}

Last updated