shgraph.hedera-protobuf-java-api.0.53.0.source-code.consensus_create_topic.proto Maven / Gradle / Ivy
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";
// <<>> This comment is special code for setting PBJ Compiler java package
option java_multiple_files = true;
import "basic_types.proto";
import "duration.proto";
/**
* See [ConsensusService.createTopic()](#proto.ConsensusService)
*/
message ConsensusCreateTopicTransactionBody {
/**
* Short publicly visible memo about the topic. No guarantee of uniqueness.
*/
string memo = 1;
/**
* Access control for updateTopic/deleteTopic.
* Anyone can increase the topic's expirationTime via ConsensusService.updateTopic(), regardless of the adminKey.
* If no adminKey is specified, updateTopic may only be used to extend the topic's expirationTime, and deleteTopic
* is disallowed.
*/
Key adminKey = 2;
/**
* Access control for submitMessage.
* If unspecified, no access control is performed on ConsensusService.submitMessage (all submissions are allowed).
*/
Key submitKey = 3;
/**
* The initial lifetime of the topic and the amount of time to attempt to extend the topic's lifetime by
* automatically at the topic's expirationTime, if the autoRenewAccount is configured (once autoRenew functionality
* is supported by HAPI).
* Limited to MIN_AUTORENEW_PERIOD and MAX_AUTORENEW_PERIOD value by server-side configuration.
* Required.
*/
Duration autoRenewPeriod = 6;
/**
* Optional account to be used at the topic's expirationTime to extend the life of the topic (once autoRenew
* functionality is supported by HAPI).
* The topic lifetime will be extended up to a maximum of the autoRenewPeriod or however long the topic
* can be extended using all funds on the account (whichever is the smaller duration/amount and if any extension
* is possible with the account's funds).
* If specified, there must be an adminKey and the autoRenewAccount must sign this transaction.
*/
AccountID autoRenewAccount = 7;
}