Skip to main content

11. Static Metaspace

Static Metaspace


Apply for Static Metaspace

POST chain_tvm (Apply for static metaspace)
Parameters
nametypedata typedescription
slicenorequiredintMetaspace number (0 for main metaspace)
Responses
http codecontent-typeresponse
0application/json{"txhash":"..."}

Response Fields:

  • Txhash - Transaction hash
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=slice&subcode=applyStaticSlice&sliceno=0", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}
Response Example
{
"jsonrpc": "3.0",
"id": "1726b2be8fef1ec6fa30ada2",
"result": {
"ret": "0",
"err": "",
"content": {
"txhash": "0x6885997ca51fa08ffded573088b0c5c294652ec842ac7f3182d32e30ce261025"
}
}
}

Get Metaspace Genesis Block

POST chain_tvm (Get genesis block content)
Parameters
nametypedata typedescription
slicenorequiredintMetaspace number
Responses
http codecontent-typeresponse
0application/jsonGenesis block content
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=slice&subcode=getgenesis&sliceno=100", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}
Response Example
{
"jsonrpc": "3.0",
"id": "eb5c92f61656b259603a3ebe",
"result": {
"ret": "0",
"err": "",
"content": {
"config": {
"chainId": 100
},
"gasLimit": "0xffffffff",
"nonce": "0x0",
"timestamp": "0x0",
"alloc": {
"0x8236760883F693Ca6240098cFAEF42E4b76ad214": {
"balance": "0x0",
"content": "Dynamic sharding"
}
}
}
}
}

Confirm Metaspace Validity

POST chain_tvm (Check metaspace validity)
Parameters
nametypedata typedescription
typerequiredintMetaspace type (1 - dynamic metaspace, other - static metaspace)
norequiredintMetaspace number
slicenorequiredintMetaspace number (0 for main metaspace)
Responses
http codecontent-typeresponse
0application/jsonValidity status
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=slice&subcode=checkslice&type=1&no=10000&sliceno=0", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Dynamic Metaspace Query

POST chain_tvm (Query dynamic metaspace information)
Parameters
nametypedata typedescription
beginrequiredintStarting metaspace number
lenrequiredintNumber of metaspaces to query
slicenorequiredintMetaspace number (0 for main metaspace)
Responses
http codecontent-typeresponse
0application/jsonList of metaspace numbers and applicant addresses
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=slice&subcode=querySliceInfo&begin=0&len=1&sliceno=0", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Deploy TRC100 Base Contract

POST chain_tvm (Deploy TRC100 base contract)
Parameters
nametypedata typedescription
slicenorequiredintMetaspace number
Responses
http codecontent-typeresponse
0application/jsonDeployment result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=trc100&subcode=init&sliceno=10005", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Configure Incentive Token

POST chain_tvm (Set incentive token contract)
Parameters
nametypedata typedescription
addressrequiredstringContract incentive code
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonConfiguration result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=setCoinbase&address=0x...&sliceno=100", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Incentive Contract Query

POST chain_tvm (Query incentive contract)
Parameters
nametypedata typedescription
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonIncentive contract address
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=coinbaseOf&sliceno=10000", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Node Management

Add Node

POST chain_tvm (Add a node)
Parameters
nametypedata typedescription
markrequiredstringFirst 24 characters of node ID
contentrequiredstringNode description
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonOperation result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=addnode&mark=&content=&sliceno=10000", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Batch Add Nodes

POST chain_tvm (Batch add nodes)
Parameters
nametypedata typedescription
file1requiredstringFull path, node information saved in separate lines in document
beginrequiredintStarting position
lenrequiredintNumber of entries
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonOperation result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=addnodes&file1=&begin=&len=&sliceno=10000", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Delete Node

POST chain_tvm (Delete a node)
Parameters
nametypedata typedescription
markrequiredstringFirst 24 characters of node ID
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonOperation result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=delnode&mark=&sliceno=10000", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Batch Delete Nodes

POST chain_tvm (Batch delete nodes)
Parameters
nametypedata typedescription
file1requiredstringFull path, node information saved in separate lines in document
beginrequiredintStarting position
lenrequiredintNumber of entries
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonOperation result
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=delnodes&file1=&begin=&len=&sliceno=10000", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}

Query Nodes

POST chain_tvm (Query node information)
Parameters
nametypedata typedescription
beginrequiredintStarting sequence number
lenrequiredintNumber of entries
slicenorequiredintTarget metaspace number
Responses
http codecontent-typeresponse
0application/jsonNode list
Example cURL
{
"jsonrpc": "3.0",
"method": "chain_tvm",
"params": ["opcode=static&subcode=nodeinfo&begin=&len=&sliceno=10001", "encryp=none"],
"id": "aa80aa0c6bb0c7d81ac7e5b3"
}