All Downloads are FREE. Search and download functionalities are using the official Maven repository.

shgraph.hedera-protobuf-java-api.0.13.2.source-code.SchedulableTransactionBody.proto Maven / Gradle / Ivy

There is a newer version: 0.57.1
Show newest version
syntax = "proto3";

package proto;

/*-
 * ‌
 * Hedera Network Services Protobuf
 * ​
 * Copyright (C) 2018 - 2021 Hedera Hashgraph, LLC
 * ​
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ‍
 */

option java_package = "com.hederahashgraph.api.proto.java";
option java_multiple_files = true;

import "SystemDelete.proto";
import "SystemUndelete.proto";
import "Freeze.proto";

import "ContractCall.proto";
import "ContractCreate.proto";
import "ContractUpdate.proto";

import "CryptoCreate.proto";
import "CryptoDelete.proto";
import "CryptoTransfer.proto";
import "CryptoUpdate.proto";

import "FileAppend.proto";
import "FileCreate.proto";
import "FileDelete.proto";
import "FileUpdate.proto";

import "ContractDelete.proto";

import "ConsensusCreateTopic.proto";
import "ConsensusUpdateTopic.proto";
import "ConsensusDeleteTopic.proto";
import "ConsensusSubmitMessage.proto";

import "TokenCreate.proto";
import "TokenFreezeAccount.proto";
import "TokenUnfreezeAccount.proto";
import "TokenGrantKyc.proto";
import "TokenRevokeKyc.proto";
import "TokenDelete.proto";
import "TokenUpdate.proto";
import "TokenMint.proto";
import "TokenBurn.proto";
import "TokenWipeAccount.proto";
import "TokenAssociate.proto";
import "TokenDissociate.proto";

import "ScheduleDelete.proto";

/* A schedulable transaction. Note that the global/dynamic system property 
scheduling.whitelist controls which transaction types may be scheduled. 
In Hedera Services 0.13.0, it will include only CryptoTransfer and
ConsensusSubmitMessage functions. */
message SchedulableTransactionBody {
  uint64 transactionFee = 1; // The maximum transaction fee the client is willing to pay
  string memo = 2; // A memo to include the execution record; the UTF-8 encoding may be up to 100 bytes and must not include the zero byte
  oneof data {
    ContractCallTransactionBody contractCall = 3; // Calls a function of a contract instance
    ContractCreateTransactionBody contractCreateInstance = 4; // Creates a contract instance
    ContractUpdateTransactionBody contractUpdateInstance = 5; // Updates a contract
    ContractDeleteTransactionBody contractDeleteInstance = 6; //Delete contract and transfer remaining balance into specified account

    CryptoCreateTransactionBody cryptoCreateAccount = 7; // Create a new cryptocurrency account
    CryptoDeleteTransactionBody cryptoDelete = 8; // Delete a cryptocurrency account (mark as deleted, and transfer hbars out)
    CryptoTransferTransactionBody cryptoTransfer = 9; // Transfer amount between accounts
    CryptoUpdateTransactionBody cryptoUpdateAccount = 10; // Modify information such as the expiration date for an account

    FileAppendTransactionBody fileAppend = 11; // Add bytes to the end of the contents of a file
    FileCreateTransactionBody fileCreate = 12; // Create a new file
    FileDeleteTransactionBody fileDelete = 13; // Delete a file (remove contents and mark as deleted until it expires)
    FileUpdateTransactionBody fileUpdate = 14; // Modify information such as the expiration date for a file
    SystemDeleteTransactionBody systemDelete = 15; // Hedera administrative deletion of a file or smart contract
    SystemUndeleteTransactionBody systemUndelete = 16; //To undelete an entity deleted by SystemDelete
    FreezeTransactionBody freeze = 17; // Freeze the nodes

    ConsensusCreateTopicTransactionBody consensusCreateTopic = 18; // Creates a topic
    ConsensusUpdateTopicTransactionBody consensusUpdateTopic = 19; // Updates a topic
    ConsensusDeleteTopicTransactionBody consensusDeleteTopic = 20; // Deletes a topic
    ConsensusSubmitMessageTransactionBody consensusSubmitMessage = 21; // Submits message to a topic

    TokenCreateTransactionBody tokenCreation = 22; // Creates a token instance
    TokenFreezeAccountTransactionBody tokenFreeze = 23; // Freezes account not to be able to transact with a token
    TokenUnfreezeAccountTransactionBody tokenUnfreeze = 24; // Unfreezes account for a token
    TokenGrantKycTransactionBody tokenGrantKyc = 25; // Grants KYC to an account for a token
    TokenRevokeKycTransactionBody tokenRevokeKyc = 26; // Revokes KYC of an account for a token
    TokenDeleteTransactionBody tokenDeletion = 27; // Deletes a token instance
    TokenUpdateTransactionBody tokenUpdate = 28; // Updates a token instance
    TokenMintTransactionBody tokenMint = 29; // Mints new tokens to a token's treasury account
    TokenBurnTransactionBody tokenBurn = 30; // Burns tokens from a token's treasury account
    TokenWipeAccountTransactionBody tokenWipe = 31; // Wipes amount of tokens from an account
    TokenAssociateTransactionBody tokenAssociate = 32; // Associate tokens to an account
    TokenDissociateTransactionBody tokenDissociate = 33; // Dissociate tokens from an account

    ScheduleDeleteTransactionBody scheduleDelete = 34; // Marks a schedule in the network's action queue as deleted, preventing it from executing
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy