wallet/proposalapprove
curl --request POST \
--url https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove \
--header 'Content-Type: application/json' \
--data '
{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"proposal_id": 1,
"is_add_approval": true,
"visible": true
}
'import requests
url = "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove"
payload = {
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"proposal_id": 1,
"is_add_approval": True,
"visible": True
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
owner_address: 'TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g',
proposal_id: 1,
is_add_approval: true,
visible: true
})
};
fetch('https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'owner_address' => 'TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g',
'proposal_id' => 1,
'is_add_approval' => true,
'visible' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove"
payload := strings.NewReader("{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove")
.header("Content-Type", "application/json")
.body("{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}"
response = http.request(request)
puts response.read_body{
"txID": "<string>",
"raw_data": {
"contract": "<array>",
"ref_block_bytes": "<string>",
"ref_block_hash": "<string>",
"expiration": 123,
"timestamp": 123
},
"raw_data_hex": "<string>",
"signature": [
"<string>"
]
}TRON node API
wallet/proposalapprove | TRON
TRON API method that allows Super Representatives to approve a governance proposal. wallet/proposalapprove on TRON via Chainstack.
POST
/
95e61622bf6a8af293978377718e3b77
/
wallet
/
proposalapprove
wallet/proposalapprove
curl --request POST \
--url https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove \
--header 'Content-Type: application/json' \
--data '
{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"proposal_id": 1,
"is_add_approval": true,
"visible": true
}
'import requests
url = "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove"
payload = {
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"proposal_id": 1,
"is_add_approval": True,
"visible": True
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
owner_address: 'TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g',
proposal_id: 1,
is_add_approval: true,
visible: true
})
};
fetch('https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'owner_address' => 'TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g',
'proposal_id' => 1,
'is_add_approval' => true,
'visible' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove"
payload := strings.NewReader("{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove")
.header("Content-Type", "application/json")
.body("{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/proposalapprove")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"owner_address\": \"TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g\",\n \"proposal_id\": 1,\n \"is_add_approval\": true,\n \"visible\": true\n}"
response = http.request(request)
puts response.read_body{
"txID": "<string>",
"raw_data": {
"contract": "<array>",
"ref_block_bytes": "<string>",
"ref_block_hash": "<string>",
"expiration": 123,
"timestamp": 123
},
"raw_data_hex": "<string>",
"signature": [
"<string>"
]
}TRON API method that allows Super Representatives to approve a governance proposal. Proposals need majority approval from Super Representatives to be executed.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.
Parameters
owner_address— the Super Representative address approving the proposal. Must be in base58 or hex format.proposal_id— the ID of the proposal to approve.is_add_approval— boolean indicating whether to approve (true) or remove approval (false).visible— optional boolean parameter. When set totrue, the address should be in base58 format. Default isfalse.
Response
txID— the transaction hash of the approval actionraw_data— the raw transaction dataraw_data_hex— the raw transaction data in hex formatsignature— array of transaction signatures
Use case
Thewallet/proposalapprove method is used for:
- Approving governance proposals by Super Representatives
- Participating in the proposal voting process
- Supporting or rejecting proposed network parameter changes
- Managing proposal approval status in governance workflows
Body
application/json
Last modified on June 22, 2026
Was this page helpful?