AssetIssue gRPC Method
Parameters
from
string
REQUIRED
Loading...
name
string
REQUIRED
Loading...
description
string
REQUIRED
Loading...
abbr
string
REQUIRED
Loading...
urlStr
string
REQUIRED
Loading...
precision
integer
REQUIRED
Loading...
totalSupply
integer
REQUIRED
Loading...
startTime
integer
REQUIRED
Loading...
endTime
integer
REQUIRED
Loading...
FreeAssetNetLimit
integer
REQUIRED
Loading...
PublicFreeAssetNetLimit
integer
REQUIRED
Loading...
trxNum
integer
REQUIRED
Loading...
icoNum
integer
REQUIRED
Loading...
voteScore
integer
REQUIRED
Loading...
frozenSupply
object
REQUIRED
Loading...
Returns
transaction
object
Loading...
raw_data
object
Loading...
ref_block_bytes
string
Loading...
ref_block_num
integer
Loading...
ref_block_hash
string
Loading...
expiration
integer
Loading...
auths
array
Loading...
data
string
Loading...
contract
array
Loading...
type
string
Loading...
parameter
object
Loading...
value
string
Loading...
type_url
string
Loading...
provider
string
Loading...
ContractName
string
Loading...
Permission_id
integer
Loading...
scripts
string
Loading...
timestamp
integer
Loading...
fee_limit
integer
Loading...
signature
array
Loading...
ret
array
Loading...
fee
integer
Loading...
ret
string
Loading...
contractRet
string
Loading...
assetIssueID
string
Loading...
withdraw_amount
integer
Loading...
unfreeze_amount
integer
Loading...
exchange_received_amount
integer
Loading...
exchange_inject_another_amount
integer
Loading...
exchange_withdraw_another_amount
integer
Loading...
exchange_id
integer
Loading...
shielded_transaction_fee
integer
Loading...
orderId
string
Loading...
orderDetails
array
Loading...
makerOrderId
string
Loading...
takerOrderId
string
Loading...
fillSellQuantity
integer
Loading...
fillBuyQuantity
integer
Loading...
withdraw_expire_amount
integer
Loading...
cancelUnfreezeV2Amount
object
Loading...
txid
string
Loading...
constant_result
array
Loading...
result
object
Loading...
result
boolean
Loading...
code
string
Loading...
message
string
Loading...
energy_used
integer
Loading...
logs
array
Loading...
address
string
Loading...
topics
array
Loading...
data
string
Loading...
internal_transactions
array
Loading...
hash
string
Loading...
caller_address
string
Loading...
transferTo_address
string
Loading...
callValueInfo
array
Loading...
callValue
integer
Loading...
tokenId
string
Loading...
note
string
Loading...
rejected
boolean
Loading...
extra
string
Loading...
energy_penalty
integer
Loading...
Request
1package main23import (4"context"5"crypto/tls"6"encoding/json"7"fmt"8"time"9"github.com/fbsobreira/gotron-sdk/pkg/client"10"google.golang.org/grpc"11"google.golang.org/grpc/credentials"12)1314// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token15// For eg: QN Endpoint: https://docs-demo.tron-mainnet.quiknode.pro/abcde12345678916// endpoint will be: docs-demo.tron-mainnet.quiknode.pro:50051 {50051 is the port number for Tron gRPC}17// token will be : abcde1234567891819var token = "YOUR_TOKEN"20var endpoint = "YOUR_ENDPOINT:50051"2122type auth struct {23token string24}2526func (a *auth) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {27return map[string]string{28"x-token": a.token,29}, nil30}3132func (a *auth) RequireTransportSecurity() bool {33return false34}3536func main() {37/*38* 1. The issuer address must have sufficient TRX balance to pay for the transaction fee.39* 2. Token creation requires minimum 1024 TRX to be burned.40*/41opts := []grpc.DialOption{42grpc.WithTransportCredentials(credentials.NewTLS(&tls.Config{})),43grpc.WithPerRPCCredentials(&auth{token}),44}45conn := client.NewGrpcClient(endpoint)46if err := conn.Start(opts...); err != nil {47panic(err)48}49defer conn.Conn.Close()5051issuerAddress := "THTqvQvDGKj2CfGfDF7pkeZ85khGJ76pwE"52name := "TOKEN_NAME" // "TOKEN_NAME"53abbr := "ABBR" // "ABBR"54description := "DESCRIPTION" // "DESCRIPTION"55url := "URL" // "URL"56var precision int32 = 6 // Decimal precision for the token (0-6)57var totalSupply int64 = 1000000000 // 1 billion tokens (must be > 0)58var trxNum int32 = 1 // TRX exchange ratio numerator (must be > 0)59var icoNum int32 = 1 // Token exchange ratio denominator (must be > 0)60currentTime := time.Now().UnixNano() / 1000000 // Current time in milliseconds (same format as in the source code)61startTime := currentTime + 86400000 // current time + 1 day in milliseconds (must be > current time)62endTime := startTime + 2592000000 // start time + 30 days in milliseconds (must be > start time)63var freeAssetNetLimit int64 = 10000 // Must be >= 064var publicFreeAssetNetLimit int64 = 100000 // Must be >= 065var voteScore int32 = 0 // Vote score66frozenSupply := make(map[string]string)6768// Updated function call based on the signature69tx, err := conn.AssetIssue(70issuerAddress, // from (issuer address)71name, // name72description, // description73abbr, // abbr74url, // urlStr75precision, // precision76totalSupply, // totalSupply77startTime, // startTime78endTime, // endTime79freeAssetNetLimit, // FreeAssetNetLimit80publicFreeAssetNetLimit, // PublicFreeAssetNetLimit81trxNum, // trxNum82icoNum, // icoNum83voteScore, // voteScore84frozenSupply, // frozenSupply85)86if err != nil {87fmt.Printf("Error calling AssetIssue: %v\n", err)88fmt.Println("Note for documentation: When running this in production, ensure the issuer address has sufficient TRX balance for the transaction fee.")89return90}91jsonData, _ := json.MarshalIndent(tx, "", " ")92fmt.Println(string(jsonData))93}
1package main23import (4"context"5"crypto/tls"6"encoding/json"7"fmt"8"time"9"github.com/fbsobreira/gotron-sdk/pkg/client"10"google.golang.org/grpc"11"google.golang.org/grpc/credentials"12)1314// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token15// For eg: QN Endpoint: https://docs-demo.tron-mainnet.quiknode.pro/abcde12345678916// endpoint will be: docs-demo.tron-mainnet.quiknode.pro:50051 {50051 is the port number for Tron gRPC}17// token will be : abcde1234567891819var token = "YOUR_TOKEN"20var endpoint = "YOUR_ENDPOINT:50051"2122type auth struct {23token string24}2526func (a *auth) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {27return map[string]string{28"x-token": a.token,29}, nil30}3132func (a *auth) RequireTransportSecurity() bool {33return false34}3536func main() {37/*38* 1. The issuer address must have sufficient TRX balance to pay for the transaction fee.39* 2. Token creation requires minimum 1024 TRX to be burned.40*/41opts := []grpc.DialOption{42grpc.WithTransportCredentials(credentials.NewTLS(&tls.Config{})),43grpc.WithPerRPCCredentials(&auth{token}),44}45conn := client.NewGrpcClient(endpoint)46if err := conn.Start(opts...); err != nil {47panic(err)48}49defer conn.Conn.Close()5051issuerAddress := "THTqvQvDGKj2CfGfDF7pkeZ85khGJ76pwE"52name := "TOKEN_NAME" // "TOKEN_NAME"53abbr := "ABBR" // "ABBR"54description := "DESCRIPTION" // "DESCRIPTION"55url := "URL" // "URL"56var precision int32 = 6 // Decimal precision for the token (0-6)57var totalSupply int64 = 1000000000 // 1 billion tokens (must be > 0)58var trxNum int32 = 1 // TRX exchange ratio numerator (must be > 0)59var icoNum int32 = 1 // Token exchange ratio denominator (must be > 0)60currentTime := time.Now().UnixNano() / 1000000 // Current time in milliseconds (same format as in the source code)61startTime := currentTime + 86400000 // current time + 1 day in milliseconds (must be > current time)62endTime := startTime + 2592000000 // start time + 30 days in milliseconds (must be > start time)63var freeAssetNetLimit int64 = 10000 // Must be >= 064var publicFreeAssetNetLimit int64 = 100000 // Must be >= 065var voteScore int32 = 0 // Vote score66frozenSupply := make(map[string]string)6768// Updated function call based on the signature69tx, err := conn.AssetIssue(70issuerAddress, // from (issuer address)71name, // name72description, // description73abbr, // abbr74url, // urlStr75precision, // precision76totalSupply, // totalSupply77startTime, // startTime78endTime, // endTime79freeAssetNetLimit, // FreeAssetNetLimit80publicFreeAssetNetLimit, // PublicFreeAssetNetLimit81trxNum, // trxNum82icoNum, // icoNum83voteScore, // voteScore84frozenSupply, // frozenSupply85)86if err != nil {87fmt.Printf("Error calling AssetIssue: %v\n", err)88fmt.Println("Note for documentation: When running this in production, ensure the issuer address has sufficient TRX balance for the transaction fee.")89return90}91jsonData, _ := json.MarshalIndent(tx, "", " ")92fmt.Println(string(jsonData))93}
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free