A ScheduleDeleteTransaction is a consensus node transaction that removes a scheduled transaction from the network. A scheduled transaction can only be deleted if an admin key was set during its creation. If no admin key was set, any attempt to delete it will result in a SCHEDULE_IS_IMMUTABLE response from the network. Once successfully deleted, the scheduled transaction will be marked as deleted, and the consensus timestamp of the deletion will be recorded.
Transaction Signing Requirements
The signature of the admin key
Transaction Properties
Field
Description
Schedule ID
The ID of the schedule transaction
Methods
Method
Type
Requirement
setScheduleId(<scheduleId>)
ScheduleId
Required
//Create the transaction and sign with the admin key
ScheduleDeleteTransaction transaction = new ScheduleDeleteTransaction()
.setScheduleId(scheduleId)
.freezeWith(client)
.sign(adminKey);
//Sign with the operator key and submit to a Hedera network
TransactionResponse txResponse = transaction.execute(client);
//Get the transaction receipt
TransactionReceipt receipt = txResponse.getReceipt(client);
//Get the transaction status
Status transactionStatus = receipt.status;
System.out.println("The transaction consensus status is " +transactionStatus);
//Create the transaction and sign with the admin key
const transaction = await new ScheduleDeleteTransaction()
.setScheduleId(scheduleId)
.freezeWith(client)
.sign(adminKey);
//Sign with the operator key and submit to a Hedera network
const txResponse = await transaction.execute(client);
//Get the transaction receipt
const receipt = await txResponse.getReceipt(client);
//Get the transaction status
const transactionStatus = receipt.status;
console.log("The transaction consensus status is " +transactionStatus);
//Create the transaction and freeze the unsigned transaction
transaction, err := hedera.NewScheduleDeleteTransaction()
SetScheduleID(scheduleId).
FreezeWith(client)
if err != nil {
panic(err)
}
//Sign with the admin key, sign with the client operator private key and submit the transaction to a Hedera network
txResponse, err := transaction.Sign(adminKey).Execute(client)
if err != nil {
panic(err)
}
//Request the receipt of the transaction
receipt, err := txResponse.GetReceipt(client)
if err != nil {
panic(err)
}
//Get the transaction consensus status
status:= *receipt.Status
fmt.Printf("The transaction consensus status is %v\n", status)