Delete a scheduled transaction

A transaction that deletes a schedule transaction from the network. You can delete a schedule transaction if only the admin key was set during the creation of the schedule transaction. If an admin key was not set, the attempted deletion will result in "SCHEDULE_IS_IMMUTABLE" response from the network. Once the schedule transaction is deleted, the schedule transaction will be marked as deleted with the consensus timestamp the schedule transaction was deleted at.

Transaction Signing Requirements

  • The admin key of the schedule transaction

Transaction Properties

Field

Description

Schedule ID

The ID of the schedule transaction

Constructor

Description

new ScheduleDeleteTransaction()

Initializes the ScheduleDeleteTransaction object

new ScheduleDeleteTransaction()

Methods

V2
V2

Method

Type

Requirement

setScheduleId(<scheduleId>)

ScheduleId

Required

getScheduleId()

ScheduleId

Optional

Java
//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);
JavaScript
//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);
Go
//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)