Skip to content

Latest commit

 

History

History
111 lines (84 loc) · 3.13 KB

get-smart-contract-bytecode.md

File metadata and controls

111 lines (84 loc) · 3.13 KB

Get smart contract bytecode

A query that returns the bytecode for a smart contract instance**.** Anyone can request the byte code of a smart contract instance on the network. Queries do not change the state of the smart contract or require network consensus. The information is returned from a single node processing the query.

Query Signing Requirements

  • The client operator account's private key (fee payer) is required to sign this query

Query Fees

  • Please see the transaction and query fees table for the base transaction fee
  • Please use the Hedera fee estimator to estimate your query fee cost
Constructor Description
new ContractByteCodeQuery() Initializes a ContractByteCodeQuery object
new ContractByteCodeQuery()

Methods

Method Type Description Requirements
setContractId(<contractId>) ContractId The ID of the contract to return the bytecode for Required

{% tabs %} {% tab title="Java" %}

//Create the query
ContractByteCodeQuery query = new ContractByteCodeQuery()
    .setContractId(contractId);

//Sign with the client operator private key and submit to a Hedera network
ByteString bytecode = query.execute(client);

{% endtab %}

{% tab title="JavaScript" %}

//Create the query
const query = new ContractByteCodeQuery()
    .setContractId(contractId);

//Sign with the client operator private key and submit to a Hedera network
const bytecode = await query.execute(client);

{% endtab %}

{% tab title="Go" %}

//Create the query
query := hedera.NewContractByteCodeQuery().
    SetContractID(contractId)

//Sign with the client operator private key to pay for the query and submit the query to a Hedera network
bytecode, err := query.Execute(client)

if err != nil {
        panic(err)
}

{% endtab %} {% endtabs %}

Get query values

Method Type Description Requirements
getContractId(<contractId>) ContractId Get the contract ID on the transaction Required

{% tabs %} {% tab title="Java" %}

//Create the query
ContractByteCodeQuery query = new ContractByteCodeQuery()
    .setContractId(newContractId);

//Get the contract ID
query.getContractId()

//v2.0.0

{% endtab %}

{% tab title="JavaScript" %}

//Create the query
const query = new ContractByteCodeQuery()
    .setContractId(newContractId);

//Get the contract ID
query.getContractId()

//v2.0.0

{% endtab %}

{% tab title="Go" %}

//Create the query
query := hedera.NewContractByteCodeQuery().
    SetContractID(contractId)

query.GetContractID()

//v2.0.0

{% endtab %} {% endtabs %}