EVER SDK
Developer ToolsEver PlatformForum
  • Ever SDK
  • Quick start (JavaScript)
  • Add EVER to your backend
  • Reference
    • Types and Methods
      • Modules
      • Module abi
      • Module boc
      • Module client
      • Module crypto
      • Module debot
      • Module net
      • Module processing
      • Module proofs
      • Module tvm
      • Module utils
    • Error API
    • Error Codes
    • JavaScript Reference
    • Rust Reference
  • Samples
    • JavaScript Samples
  • guides
    • Installation
      • Add SDK to your App
    • Configuration
      • Endpoint Configuration
      • Message Expiration
      • Message Retry
      • Config Reference
    • Work with contracts
      • Add Contract to your App
      • Use your own Giver
      • Deploy
      • Run on-chain
      • Run ABI Get Method
      • Run Fift Get Method
      • Query/Subscribe for messages(events)
      • Decode Messages(Event)
      • External Signing
      • Emulate Transaction
      • Estimate Fees
      • Validate address, convert address
      • Monitor Messages
      • Trace message processing with REMP
    • Crypto
      • Mnemonics and Keys
    • Queries and subscriptions
      • Use-cases
      • How to work with net module
      • net.query syntax
      • Data pagination
      • Subscribe to Updates
      • Query Collection
      • Aggregate Collection
  • For Binding Developers
    • How to work with Application Objects in binding generators
    • JSON Interface to Ton Client
  • Links
    • Ever SDK repository
    • AppKit JS documentation
Powered by GitBook
On this page
  • Module boc
  • Functions
  • Types
  • Functions
  • decode_tvc
  • parse_message
  • parse_transaction
  • parse_account
  • parse_block
  • parse_shardstate
  • get_blockchain_config
  • get_boc_hash
  • get_boc_depth
  • get_code_from_tvc
  • cache_get
  • cache_set
  • cache_unpin
  • encode_boc
  • get_code_salt
  • set_code_salt
  • decode_state_init
  • encode_state_init
  • encode_external_in_message
  • get_compiler_version
  • Types
  • BocCacheTypePinnedVariant
  • BocCacheTypeUnpinnedVariant
  • BocCacheType
  • BuilderOpIntegerVariant
  • BuilderOpBitStringVariant
  • BuilderOpCellVariant
  • BuilderOpCellBocVariant
  • BuilderOpAddressVariant
  • BuilderOp
  • TvcV1Variant
  • Tvc
  • TvcV1
  • BocErrorCode
  • ParamsOfDecodeTvc
  • ResultOfDecodeTvc
  • ParamsOfParse
  • ResultOfParse
  • ParamsOfParseShardstate
  • ParamsOfGetBlockchainConfig
  • ResultOfGetBlockchainConfig
  • ParamsOfGetBocHash
  • ResultOfGetBocHash
  • ParamsOfGetBocDepth
  • ResultOfGetBocDepth
  • ParamsOfGetCodeFromTvc
  • ResultOfGetCodeFromTvc
  • ParamsOfBocCacheGet
  • ResultOfBocCacheGet
  • ParamsOfBocCacheSet
  • ResultOfBocCacheSet
  • ParamsOfBocCacheUnpin
  • ParamsOfEncodeBoc
  • ResultOfEncodeBoc
  • ParamsOfGetCodeSalt
  • ResultOfGetCodeSalt
  • ParamsOfSetCodeSalt
  • ResultOfSetCodeSalt
  • ParamsOfDecodeStateInit
  • ResultOfDecodeStateInit
  • ParamsOfEncodeStateInit
  • ResultOfEncodeStateInit
  • ParamsOfEncodeExternalInMessage
  • ResultOfEncodeExternalInMessage
  • ParamsOfGetCompilerVersion
  • ResultOfGetCompilerVersion

Was this helpful?

  1. Reference
  2. Types and Methods

Module boc

PreviousModule abiNextModule client

Last updated 1 year ago

Was this helpful?

Module boc

BOC manipulation module.

Functions

– Decodes tvc according to the tvc spec. Read more about tvc structure here https://github.com/everx-labs/ever-struct/blob/main/src/scheme/mod.rs#L30

– Parses message boc into a JSON

– Parses transaction boc into a JSON

– Parses account boc into a JSON

– Parses block boc into a JSON

– Parses shardstate boc into a JSON

– Extract blockchain configuration from key block and also from zerostate.

– Calculates BOC root hash

– Calculates BOC depth

– Extracts code from TVC contract image

– Get BOC from cache

– Save BOC into cache or increase pin counter for existing pinned BOC

– Unpin BOCs with specified pin defined in the cache_set. Decrease pin reference counter for BOCs with specified pin defined in the cache_set. BOCs which have only 1 pin and its reference counter become 0 will be removed from cache

Types

Functions

decode_tvc

Decodes tvc according to the tvc spec. Read more about tvc structure here https://github.com/everx-labs/ever-struct/blob/main/src/scheme/mod.rs#L30

type ParamsOfDecodeTvc = {
    tvc: string
}

type ResultOfDecodeTvc = {
    tvc: Tvc
}

function decode_tvc(
    params: ParamsOfDecodeTvc,
): Promise<ResultOfDecodeTvc>;

function decode_tvc_sync(
    params: ParamsOfDecodeTvc,
): ResultOfDecodeTvc;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • tvc: string – Contract TVC BOC encoded as base64 or BOC handle

Result

parse_message

Parses message boc into a JSON

JSON structure is compatible with GraphQL API message object

type ParamsOfParse = {
    boc: string
}

type ResultOfParse = {
    parsed: any
}

function parse_message(
    params: ParamsOfParse,
): Promise<ResultOfParse>;

function parse_message_sync(
    params: ParamsOfParse,
): ResultOfParse;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64

Result

  • parsed: any – JSON containing parsed BOC

parse_transaction

Parses transaction boc into a JSON

JSON structure is compatible with GraphQL API transaction object

type ParamsOfParse = {
    boc: string
}

type ResultOfParse = {
    parsed: any
}

function parse_transaction(
    params: ParamsOfParse,
): Promise<ResultOfParse>;

function parse_transaction_sync(
    params: ParamsOfParse,
): ResultOfParse;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64

Result

  • parsed: any – JSON containing parsed BOC

parse_account

Parses account boc into a JSON

JSON structure is compatible with GraphQL API account object

type ParamsOfParse = {
    boc: string
}

type ResultOfParse = {
    parsed: any
}

function parse_account(
    params: ParamsOfParse,
): Promise<ResultOfParse>;

function parse_account_sync(
    params: ParamsOfParse,
): ResultOfParse;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64

Result

  • parsed: any – JSON containing parsed BOC

parse_block

Parses block boc into a JSON

JSON structure is compatible with GraphQL API block object

type ParamsOfParse = {
    boc: string
}

type ResultOfParse = {
    parsed: any
}

function parse_block(
    params: ParamsOfParse,
): Promise<ResultOfParse>;

function parse_block_sync(
    params: ParamsOfParse,
): ResultOfParse;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64

Result

  • parsed: any – JSON containing parsed BOC

parse_shardstate

Parses shardstate boc into a JSON

JSON structure is compatible with GraphQL API shardstate object

type ParamsOfParseShardstate = {
    boc: string,
    id: string,
    workchain_id: number
}

type ResultOfParse = {
    parsed: any
}

function parse_shardstate(
    params: ParamsOfParseShardstate,
): Promise<ResultOfParse>;

function parse_shardstate_sync(
    params: ParamsOfParseShardstate,
): ResultOfParse;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64

  • id: string – Shardstate identifier

  • workchain_id: number – Workchain shardstate belongs to

Result

  • parsed: any – JSON containing parsed BOC

get_blockchain_config

Extract blockchain configuration from key block and also from zerostate.

type ParamsOfGetBlockchainConfig = {
    block_boc: string
}

type ResultOfGetBlockchainConfig = {
    config_boc: string
}

function get_blockchain_config(
    params: ParamsOfGetBlockchainConfig,
): Promise<ResultOfGetBlockchainConfig>;

function get_blockchain_config_sync(
    params: ParamsOfGetBlockchainConfig,
): ResultOfGetBlockchainConfig;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • block_boc: string – Key block BOC or zerostate BOC encoded as base64

Result

  • config_boc: string – Blockchain config BOC encoded as base64

get_boc_hash

Calculates BOC root hash

type ParamsOfGetBocHash = {
    boc: string
}

type ResultOfGetBocHash = {
    hash: string
}

function get_boc_hash(
    params: ParamsOfGetBocHash,
): Promise<ResultOfGetBocHash>;

function get_boc_hash_sync(
    params: ParamsOfGetBocHash,
): ResultOfGetBocHash;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64 or BOC handle

Result

  • hash: string – BOC root hash encoded with hex

get_boc_depth

Calculates BOC depth

type ParamsOfGetBocDepth = {
    boc: string
}

type ResultOfGetBocDepth = {
    depth: number
}

function get_boc_depth(
    params: ParamsOfGetBocDepth,
): Promise<ResultOfGetBocDepth>;

function get_boc_depth_sync(
    params: ParamsOfGetBocDepth,
): ResultOfGetBocDepth;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64 or BOC handle

Result

  • depth: number – BOC root cell depth

get_code_from_tvc

Extracts code from TVC contract image

type ParamsOfGetCodeFromTvc = {
    tvc: string
}

type ResultOfGetCodeFromTvc = {
    code: string
}

function get_code_from_tvc(
    params: ParamsOfGetCodeFromTvc,
): Promise<ResultOfGetCodeFromTvc>;

function get_code_from_tvc_sync(
    params: ParamsOfGetCodeFromTvc,
): ResultOfGetCodeFromTvc;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • tvc: string – Contract TVC image or image BOC handle

Result

  • code: string – Contract code encoded as base64

cache_get

Get BOC from cache

type ParamsOfBocCacheGet = {
    boc_ref: string
}

type ResultOfBocCacheGet = {
    boc?: string
}

function cache_get(
    params: ParamsOfBocCacheGet,
): Promise<ResultOfBocCacheGet>;

function cache_get_sync(
    params: ParamsOfBocCacheGet,
): ResultOfBocCacheGet;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc_ref: string – Reference to the cached BOC

Result

  • boc?: string – BOC encoded as base64.

cache_set

Save BOC into cache or increase pin counter for existing pinned BOC

type ParamsOfBocCacheSet = {
    boc: string,
    cache_type: BocCacheType
}

type ResultOfBocCacheSet = {
    boc_ref: string
}

function cache_set(
    params: ParamsOfBocCacheSet,
): Promise<ResultOfBocCacheSet>;

function cache_set_sync(
    params: ParamsOfBocCacheSet,
): ResultOfBocCacheSet;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • boc: string – BOC encoded as base64 or BOC reference

Result

  • boc_ref: string – Reference to the cached BOC

cache_unpin

Unpin BOCs with specified pin defined in the cache_set. Decrease pin reference counter for BOCs with specified pin defined in the cache_set. BOCs which have only 1 pin and its reference counter become 0 will be removed from cache

type ParamsOfBocCacheUnpin = {
    pin: string,
    boc_ref?: string
}

function cache_unpin(
    params: ParamsOfBocCacheUnpin,
): Promise<void>;

function cache_unpin_sync(
    params: ParamsOfBocCacheUnpin,
): void;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • pin: string – Pinned name

  • boc_ref?: string – Reference to the cached BOC. If it is provided then only referenced BOC is unpinned

encode_boc

Encodes bag of cells (BOC) with builder operations. This method provides the same functionality as Solidity TvmBuilder. Resulting BOC of this method can be passed into Solidity and C++ contracts as TvmCell type.

type ParamsOfEncodeBoc = {
    builder: BuilderOp[],
    boc_cache?: BocCacheType
}

type ResultOfEncodeBoc = {
    boc: string
}

function encode_boc(
    params: ParamsOfEncodeBoc,
): Promise<ResultOfEncodeBoc>;

function encode_boc_sync(
    params: ParamsOfEncodeBoc,
): ResultOfEncodeBoc;

NOTE: Sync version is available only for lib-node binding.

Parameters

Result

  • boc: string – Encoded cell BOC or BOC cache key.

get_code_salt

Returns the contract code's salt if it is present.

type ParamsOfGetCodeSalt = {
    code: string,
    boc_cache?: BocCacheType
}

type ResultOfGetCodeSalt = {
    salt?: string
}

function get_code_salt(
    params: ParamsOfGetCodeSalt,
): Promise<ResultOfGetCodeSalt>;

function get_code_salt_sync(
    params: ParamsOfGetCodeSalt,
): ResultOfGetCodeSalt;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • code: string – Contract code BOC encoded as base64 or code BOC handle

Result

  • salt?: string – Contract code salt if present. BOC encoded as base64 or BOC handle

set_code_salt

Sets new salt to contract code.

Returns the new contract code with salt.

type ParamsOfSetCodeSalt = {
    code: string,
    salt: string,
    boc_cache?: BocCacheType
}

type ResultOfSetCodeSalt = {
    code: string
}

function set_code_salt(
    params: ParamsOfSetCodeSalt,
): Promise<ResultOfSetCodeSalt>;

function set_code_salt_sync(
    params: ParamsOfSetCodeSalt,
): ResultOfSetCodeSalt;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • code: string – Contract code BOC encoded as base64 or code BOC handle

  • salt: string – Code salt to set. BOC encoded as base64 or BOC handle

Result

  • code: string – Contract code with salt set. BOC encoded as base64 or BOC handle

decode_state_init

Decodes contract's initial state into code, data, libraries and special options.

type ParamsOfDecodeStateInit = {
    state_init: string,
    boc_cache?: BocCacheType
}

type ResultOfDecodeStateInit = {
    code?: string,
    code_hash?: string,
    code_depth?: number,
    data?: string,
    data_hash?: string,
    data_depth?: number,
    library?: string,
    tick?: boolean,
    tock?: boolean,
    split_depth?: number,
    compiler_version?: string
}

function decode_state_init(
    params: ParamsOfDecodeStateInit,
): Promise<ResultOfDecodeStateInit>;

function decode_state_init_sync(
    params: ParamsOfDecodeStateInit,
): ResultOfDecodeStateInit;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • state_init: string – Contract StateInit image BOC encoded as base64 or BOC handle

Result

  • code?: string – Contract code BOC encoded as base64 or BOC handle

  • code_hash?: string – Contract code hash

  • code_depth?: number – Contract code depth

  • data?: string – Contract data BOC encoded as base64 or BOC handle

  • data_hash?: string – Contract data hash

  • data_depth?: number – Contract data depth

  • library?: string – Contract library BOC encoded as base64 or BOC handle

  • tick?: boolean – special.tick field. Specifies the contract ability to handle tick transactions

  • tock?: boolean – special.tock field. Specifies the contract ability to handle tock transactions

  • split_depth?: number – Is present and non-zero only in instances of large smart contracts

  • compiler_version?: string – Compiler version, for example 'sol 0.49.0'

encode_state_init

Encodes initial contract state from code, data, libraries ans special options (see input params)

type ParamsOfEncodeStateInit = {
    code?: string,
    data?: string,
    library?: string,
    tick?: boolean,
    tock?: boolean,
    split_depth?: number,
    boc_cache?: BocCacheType
}

type ResultOfEncodeStateInit = {
    state_init: string
}

function encode_state_init(
    params: ParamsOfEncodeStateInit,
): Promise<ResultOfEncodeStateInit>;

function encode_state_init_sync(
    params: ParamsOfEncodeStateInit,
): ResultOfEncodeStateInit;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • code?: string – Contract code BOC encoded as base64 or BOC handle

  • data?: string – Contract data BOC encoded as base64 or BOC handle

  • library?: string – Contract library BOC encoded as base64 or BOC handle

  • tick?: boolean – special.tick field. Specifies the contract ability to handle tick transactions

  • tock?: boolean – special.tock field. Specifies the contract ability to handle tock transactions

  • split_depth?: number – Is present and non-zero only in instances of large smart contracts

Result

  • state_init: string – Contract StateInit image BOC encoded as base64 or BOC handle of boc_cache parameter was specified

encode_external_in_message

Encodes a message

Allows to encode any external inbound message.

type ParamsOfEncodeExternalInMessage = {
    src?: string,
    dst: string,
    init?: string,
    body?: string,
    boc_cache?: BocCacheType
}

type ResultOfEncodeExternalInMessage = {
    message: string,
    message_id: string
}

function encode_external_in_message(
    params: ParamsOfEncodeExternalInMessage,
): Promise<ResultOfEncodeExternalInMessage>;

function encode_external_in_message_sync(
    params: ParamsOfEncodeExternalInMessage,
): ResultOfEncodeExternalInMessage;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • src?: string – Source address.

  • dst: string – Destination address.

  • init?: string – Bag of cells with state init (used in deploy messages).

  • body?: string – Bag of cells with the message body encoded as base64.

Result

  • message: string – Message BOC encoded with base64.

  • message_id: string – Message id.

get_compiler_version

Returns the compiler version used to compile the code.

type ParamsOfGetCompilerVersion = {
    code: string
}

type ResultOfGetCompilerVersion = {
    version?: string
}

function get_compiler_version(
    params: ParamsOfGetCompilerVersion,
): Promise<ResultOfGetCompilerVersion>;

function get_compiler_version_sync(
    params: ParamsOfGetCompilerVersion,
): ResultOfGetCompilerVersion;

NOTE: Sync version is available only for lib-node binding.

Parameters

  • code: string – Contract code BOC encoded as base64 or code BOC handle

Result

  • version?: string – Compiler version, for example 'sol 0.49.0'

Types

BocCacheTypePinnedVariant

Pin the BOC with pin name.

Such BOC will not be removed from cache until it is unpinned BOCs can have several pins and each of the pins has reference counter indicating how many times the BOC was pinned with the pin. BOC is removed from cache after all references for all pins are unpinned with cache_unpin function calls.

type BocCacheTypePinnedVariant = {
    pin: string
}
  • pin: string

BocCacheTypeUnpinnedVariant

BOC is placed into a common BOC pool with limited size regulated by LRU (least recently used) cache lifecycle.

BOC resides there until it is replaced with other BOCs if it is not used

type BocCacheTypeUnpinnedVariant = {

}

BocCacheType

type BocCacheType = ({
    type: 'Pinned'
} & BocCacheTypePinnedVariant) | ({
    type: 'Unpinned'
} & BocCacheTypeUnpinnedVariant)

Depends on value of the type field.

When type is 'Pinned'

Pin the BOC with pin name.

Such BOC will not be removed from cache until it is unpinned BOCs can have several pins and each of the pins has reference counter indicating how many times the BOC was pinned with the pin. BOC is removed from cache after all references for all pins are unpinned with cache_unpin function calls.

  • pin: string

When type is 'Unpinned'

BOC is placed into a common BOC pool with limited size regulated by LRU (least recently used) cache lifecycle.

BOC resides there until it is replaced with other BOCs if it is not used

Variant constructors:

function bocCacheTypePinned(pin: string): BocCacheType;
function bocCacheTypeUnpinned(): BocCacheType;

BuilderOpIntegerVariant

Append integer to cell data.

type BuilderOpIntegerVariant = {
    size: number,
    value: any
}
  • size: number – Bit size of the value.

  • value: any – Value: - Number containing integer number. e.g. 123, -123. - Decimal string. e.g. "123", "-123". - 0x prefixed hexadecimal string. e.g 0x123, 0X123, -0x123.

BuilderOpBitStringVariant

Append bit string to cell data.

type BuilderOpBitStringVariant = {
    value: string
}
  • value: string – Bit string content using bitstring notation. See TON VM specification 1.0. Contains hexadecimal string representation: - Can end with _ tag. - Can be prefixed with x or X. - Can be prefixed with x{ or X{ and ended with }. Contains binary string represented as a sequence of 0 and 1 prefixed with n or N. Examples: 1AB, x1ab, X1AB, x{1abc}, X{1ABC} 2D9_, x2D9_, X2D9_, x{2D9_}, X{2D9_} n00101101100, N00101101100

BuilderOpCellVariant

Append ref to nested cells.

type BuilderOpCellVariant = {
    builder: BuilderOp[]
}

BuilderOpCellBocVariant

Append ref to nested cell.

type BuilderOpCellBocVariant = {
    boc: string
}
  • boc: string – Nested cell BOC encoded with base64 or BOC cache key.

BuilderOpAddressVariant

Address.

type BuilderOpAddressVariant = {
    address: string
}
  • address: string – Address in a common workchain:account or base64 format.

BuilderOp

Cell builder operation.

type BuilderOp = ({
    type: 'Integer'
} & BuilderOpIntegerVariant) | ({
    type: 'BitString'
} & BuilderOpBitStringVariant) | ({
    type: 'Cell'
} & BuilderOpCellVariant) | ({
    type: 'CellBoc'
} & BuilderOpCellBocVariant) | ({
    type: 'Address'
} & BuilderOpAddressVariant)

Depends on value of the type field.

When type is 'Integer'

Append integer to cell data.

  • size: number – Bit size of the value.

  • value: any – Value: - Number containing integer number. e.g. 123, -123. - Decimal string. e.g. "123", "-123". - 0x prefixed hexadecimal string. e.g 0x123, 0X123, -0x123.

When type is 'BitString'

Append bit string to cell data.

  • value: string – Bit string content using bitstring notation. See TON VM specification 1.0. Contains hexadecimal string representation: - Can end with _ tag. - Can be prefixed with x or X. - Can be prefixed with x{ or X{ and ended with }. Contains binary string represented as a sequence of 0 and 1 prefixed with n or N. Examples: 1AB, x1ab, X1AB, x{1abc}, X{1ABC} 2D9_, x2D9_, X2D9_, x{2D9_}, X{2D9_} n00101101100, N00101101100

When type is 'Cell'

Append ref to nested cells.

When type is 'CellBoc'

Append ref to nested cell.

  • boc: string – Nested cell BOC encoded with base64 or BOC cache key.

When type is 'Address'

Address.

  • address: string – Address in a common workchain:account or base64 format.

Variant constructors:

function builderOpInteger(size: number, value: any): BuilderOp;
function builderOpBitString(value: string): BuilderOp;
function builderOpCell(builder: BuilderOp[]): BuilderOp;
function builderOpCellBoc(boc: string): BuilderOp;
function builderOpAddress(address: string): BuilderOp;

TvcV1Variant

type TvcV1Variant = {
    value: TvcV1
}

Tvc

type Tvc = ({
    type: 'V1'
} & TvcV1Variant)

Depends on value of the type field.

When type is 'V1'

Variant constructors:

function tvcV1(value: TvcV1): Tvc;

TvcV1

type TvcV1 = {
    code?: string,
    description?: string
}
  • code?: string

  • description?: string

BocErrorCode

enum BocErrorCode {
    InvalidBoc = 201,
    SerializationError = 202,
    InappropriateBlock = 203,
    MissingSourceBoc = 204,
    InsufficientCacheSize = 205,
    BocRefNotFound = 206,
    InvalidBocRef = 207
}

One of the following value:

  • InvalidBoc = 201

  • SerializationError = 202

  • InappropriateBlock = 203

  • MissingSourceBoc = 204

  • InsufficientCacheSize = 205

  • BocRefNotFound = 206

  • InvalidBocRef = 207

ParamsOfDecodeTvc

type ParamsOfDecodeTvc = {
    tvc: string
}
  • tvc: string – Contract TVC BOC encoded as base64 or BOC handle

ResultOfDecodeTvc

type ResultOfDecodeTvc = {
    tvc: Tvc
}

ParamsOfParse

type ParamsOfParse = {
    boc: string
}
  • boc: string – BOC encoded as base64

ResultOfParse

type ResultOfParse = {
    parsed: any
}
  • parsed: any – JSON containing parsed BOC

ParamsOfParseShardstate

type ParamsOfParseShardstate = {
    boc: string,
    id: string,
    workchain_id: number
}
  • boc: string – BOC encoded as base64

  • id: string – Shardstate identifier

  • workchain_id: number – Workchain shardstate belongs to

ParamsOfGetBlockchainConfig

type ParamsOfGetBlockchainConfig = {
    block_boc: string
}
  • block_boc: string – Key block BOC or zerostate BOC encoded as base64

ResultOfGetBlockchainConfig

type ResultOfGetBlockchainConfig = {
    config_boc: string
}
  • config_boc: string – Blockchain config BOC encoded as base64

ParamsOfGetBocHash

type ParamsOfGetBocHash = {
    boc: string
}
  • boc: string – BOC encoded as base64 or BOC handle

ResultOfGetBocHash

type ResultOfGetBocHash = {
    hash: string
}
  • hash: string – BOC root hash encoded with hex

ParamsOfGetBocDepth

type ParamsOfGetBocDepth = {
    boc: string
}
  • boc: string – BOC encoded as base64 or BOC handle

ResultOfGetBocDepth

type ResultOfGetBocDepth = {
    depth: number
}
  • depth: number – BOC root cell depth

ParamsOfGetCodeFromTvc

type ParamsOfGetCodeFromTvc = {
    tvc: string
}
  • tvc: string – Contract TVC image or image BOC handle

ResultOfGetCodeFromTvc

type ResultOfGetCodeFromTvc = {
    code: string
}
  • code: string – Contract code encoded as base64

ParamsOfBocCacheGet

type ParamsOfBocCacheGet = {
    boc_ref: string
}
  • boc_ref: string – Reference to the cached BOC

ResultOfBocCacheGet

type ResultOfBocCacheGet = {
    boc?: string
}
  • boc?: string – BOC encoded as base64.

ParamsOfBocCacheSet

type ParamsOfBocCacheSet = {
    boc: string,
    cache_type: BocCacheType
}
  • boc: string – BOC encoded as base64 or BOC reference

ResultOfBocCacheSet

type ResultOfBocCacheSet = {
    boc_ref: string
}
  • boc_ref: string – Reference to the cached BOC

ParamsOfBocCacheUnpin

type ParamsOfBocCacheUnpin = {
    pin: string,
    boc_ref?: string
}
  • pin: string – Pinned name

  • boc_ref?: string – Reference to the cached BOC. If it is provided then only referenced BOC is unpinned

ParamsOfEncodeBoc

type ParamsOfEncodeBoc = {
    builder: BuilderOp[],
    boc_cache?: BocCacheType
}

ResultOfEncodeBoc

type ResultOfEncodeBoc = {
    boc: string
}
  • boc: string – Encoded cell BOC or BOC cache key.

ParamsOfGetCodeSalt

type ParamsOfGetCodeSalt = {
    code: string,
    boc_cache?: BocCacheType
}
  • code: string – Contract code BOC encoded as base64 or code BOC handle

ResultOfGetCodeSalt

type ResultOfGetCodeSalt = {
    salt?: string
}
  • salt?: string – Contract code salt if present. BOC encoded as base64 or BOC handle

ParamsOfSetCodeSalt

type ParamsOfSetCodeSalt = {
    code: string,
    salt: string,
    boc_cache?: BocCacheType
}
  • code: string – Contract code BOC encoded as base64 or code BOC handle

  • salt: string – Code salt to set. BOC encoded as base64 or BOC handle

ResultOfSetCodeSalt

type ResultOfSetCodeSalt = {
    code: string
}
  • code: string – Contract code with salt set. BOC encoded as base64 or BOC handle

ParamsOfDecodeStateInit

type ParamsOfDecodeStateInit = {
    state_init: string,
    boc_cache?: BocCacheType
}
  • state_init: string – Contract StateInit image BOC encoded as base64 or BOC handle

ResultOfDecodeStateInit

type ResultOfDecodeStateInit = {
    code?: string,
    code_hash?: string,
    code_depth?: number,
    data?: string,
    data_hash?: string,
    data_depth?: number,
    library?: string,
    tick?: boolean,
    tock?: boolean,
    split_depth?: number,
    compiler_version?: string
}
  • code?: string – Contract code BOC encoded as base64 or BOC handle

  • code_hash?: string – Contract code hash

  • code_depth?: number – Contract code depth

  • data?: string – Contract data BOC encoded as base64 or BOC handle

  • data_hash?: string – Contract data hash

  • data_depth?: number – Contract data depth

  • library?: string – Contract library BOC encoded as base64 or BOC handle

  • tick?: boolean – special.tick field. Specifies the contract ability to handle tick transactions

  • tock?: boolean – special.tock field. Specifies the contract ability to handle tock transactions

  • split_depth?: number – Is present and non-zero only in instances of large smart contracts

  • compiler_version?: string – Compiler version, for example 'sol 0.49.0'

ParamsOfEncodeStateInit

type ParamsOfEncodeStateInit = {
    code?: string,
    data?: string,
    library?: string,
    tick?: boolean,
    tock?: boolean,
    split_depth?: number,
    boc_cache?: BocCacheType
}
  • code?: string – Contract code BOC encoded as base64 or BOC handle

  • data?: string – Contract data BOC encoded as base64 or BOC handle

  • library?: string – Contract library BOC encoded as base64 or BOC handle

  • tick?: boolean – special.tick field. Specifies the contract ability to handle tick transactions

  • tock?: boolean – special.tock field. Specifies the contract ability to handle tock transactions

  • split_depth?: number – Is present and non-zero only in instances of large smart contracts

ResultOfEncodeStateInit

type ResultOfEncodeStateInit = {
    state_init: string
}
  • state_init: string – Contract StateInit image BOC encoded as base64 or BOC handle of boc_cache parameter was specified

ParamsOfEncodeExternalInMessage

type ParamsOfEncodeExternalInMessage = {
    src?: string,
    dst: string,
    init?: string,
    body?: string,
    boc_cache?: BocCacheType
}
  • src?: string – Source address.

  • dst: string – Destination address.

  • init?: string – Bag of cells with state init (used in deploy messages).

  • body?: string – Bag of cells with the message body encoded as base64.

ResultOfEncodeExternalInMessage

type ResultOfEncodeExternalInMessage = {
    message: string,
    message_id: string
}
  • message: string – Message BOC encoded with base64.

  • message_id: string – Message id.

ParamsOfGetCompilerVersion

type ParamsOfGetCompilerVersion = {
    code: string
}
  • code: string – Contract code BOC encoded as base64 or code BOC handle

ResultOfGetCompilerVersion

type ResultOfGetCompilerVersion = {
    version?: string
}
  • version?: string – Compiler version, for example 'sol 0.49.0'

– Encodes bag of cells (BOC) with builder operations. This method provides the same functionality as Solidity TvmBuilder. Resulting BOC of this method can be passed into Solidity and C++ contracts as TvmCell type.

– Returns the contract code's salt if it is present.

– Sets new salt to contract code.

– Decodes contract's initial state into code, data, libraries and special options.

– Encodes initial contract state from code, data, libraries ans special options (see input params)

– Encodes a message

– Returns the compiler version used to compile the code.

– Pin the BOC with pin name.

– BOC is placed into a common BOC pool with limited size regulated by LRU (least recently used) cache lifecycle.

– Append integer to cell data.

– Append bit string to cell data.

– Append ref to nested cells.

– Append ref to nested cell.

– Address.

– Cell builder operation.

tvc: – Decoded TVC

cache_type: – Cache type

builder: [] – Cell builder operations.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided

builder: [] – Nested cell builder.

builder: [] – Nested cell builder.

value:

value:

tvc: – Decoded TVC

cache_type: – Cache type

builder: [] – Cell builder operations.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided.

boc_cache?: – Cache type to put the result. The BOC itself returned if no cache type provided

decode_tvc
parse_message
parse_transaction
parse_account
parse_block
parse_shardstate
get_blockchain_config
get_boc_hash
get_boc_depth
get_code_from_tvc
cache_get
cache_set
cache_unpin
encode_boc
get_code_salt
set_code_salt
decode_state_init
encode_state_init
encode_external_in_message
get_compiler_version
BocCacheTypePinnedVariant
BocCacheTypeUnpinnedVariant
BocCacheType
BuilderOpIntegerVariant
BuilderOpBitStringVariant
BuilderOpCellVariant
BuilderOpCellBocVariant
BuilderOpAddressVariant
BuilderOp
TvcV1Variant
Tvc
TvcV1
BocErrorCode
ParamsOfDecodeTvc
ResultOfDecodeTvc
ParamsOfParse
ResultOfParse
ParamsOfParseShardstate
ParamsOfGetBlockchainConfig
ResultOfGetBlockchainConfig
ParamsOfGetBocHash
ResultOfGetBocHash
ParamsOfGetBocDepth
ResultOfGetBocDepth
ParamsOfGetCodeFromTvc
ResultOfGetCodeFromTvc
ParamsOfBocCacheGet
ResultOfBocCacheGet
ParamsOfBocCacheSet
ResultOfBocCacheSet
ParamsOfBocCacheUnpin
ParamsOfEncodeBoc
ResultOfEncodeBoc
ParamsOfGetCodeSalt
ResultOfGetCodeSalt
ParamsOfSetCodeSalt
ResultOfSetCodeSalt
ParamsOfDecodeStateInit
ResultOfDecodeStateInit
ParamsOfEncodeStateInit
ResultOfEncodeStateInit
ParamsOfEncodeExternalInMessage
ResultOfEncodeExternalInMessage
ParamsOfGetCompilerVersion
ResultOfGetCompilerVersion
Tvc
BocCacheType
BuilderOp
BocCacheType
BocCacheType
BocCacheType
BocCacheType
BocCacheType
BocCacheType
BuilderOp
BuilderOp
TvcV1
TvcV1
Tvc
BocCacheType
BuilderOp
BocCacheType
BocCacheType
BocCacheType
BocCacheType
BocCacheType
BocCacheType