A ScheduleSignTransaction is a consensus node transaction that adds signatures to a scheduled transaction. When this transaction is successful:
The signature is added to the scheduled transaction
A record of the transaction is created
To view the signatures that have been added to a scheduled transaction, you can use a ScheduleInfoQuery to query the network. Once the scheduled transaction has received all the required signatures, it will execute immediately, unless it has been configured to execute at a specified expiration time.
Transaction Signing Requirements
The signature of the account paying for the transaction fees
The signature being applied to the scheduled transaction
Transaction Properties
Field
Description
Schedule ID
The ID of the schedule transaction to submit the signature for
Methods
Method
Type
Requirement
setScheduleId(<scheduleId>)
ScheduleId
Required
Java
//Create the transactionScheduleSignTransaction transaction =newScheduleSignTransaction().setScheduleId(scheduleId).freezeWith(client).sign(privateKeySigner1);//Sign with the client operator key to pay for the transaction and submit to a Hedera networkTransactionResponse txResponse =transaction.execute(client);//Get the receipt of the transactionTransactionReceipt receipt =txResponse.getReceipt(client);//Get the transaction statusStatus transactionStatus =receipt.status;System.out.println("The transaction consensus status is "+transactionStatus);
//Create the transactionconsttransaction=awaitnewScheduleSignTransaction().setScheduleId(scheduleId).freezeWith(client).sign(privateKeySigner1);//Sign with the client operator key to pay for the transaction and submit to a Hedera networkconsttxResponse=awaittransaction.execute(client);//Get the receipt of the transactionconstreceipt=awaittxResponse.getReceipt(client);//Get the transaction statusconsttransactionStatus=receipt.status;console.log("The transaction consensus status is "+transactionStatus);
//Create the transaction and freeze the unsigned transactiontransaction, err := hedera.NewScheduleSignTransaction().SetScheduleID(scheduleId).FreezeWith(client)if err !=nil {panic(err)}//Sign with one of the required signatures, sign with the client operator private key and submit the transaction to a Hedera networktxResponse, err := transaction.Sign(privateKeySigner1).Execute(client)if err !=nil {panic(err)}//Request the receipt of the transactionreceipt, err := txResponse.GetReceipt(client)if err !=nil {panic(err)}//Get the transaction consensus statusstatus:=*receipt.Statusfmt.Printf("The transaction consensus status is %v\n", status)