Show / Hide Table of Contents

Class CreateTopicExtensions

Extension methods for creating consensus topics.

Inheritance
object
CreateTopicExtensions
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Hiero
Assembly: Hiero.dll
Syntax
public static class CreateTopicExtensions

Methods

| Edit this page View Source

CreateTopicAsync(ConsensusClient, CreateTopicParams, Action<IConsensusContext>?)

Creates a new topic instance with the given create parameters.

Declaration
public static Task<CreateTopicReceipt> CreateTopicAsync(this ConsensusClient client, CreateTopicParams createParameters, Action<IConsensusContext>? configure = null)
Parameters
Type Name Description
ConsensusClient client

The Consensus Node Client orchestrating the create.

CreateTopicParams createParameters

Details regarding the topic to instantiate.

Action<IConsensusContext> configure

Optional callback method providing an opportunity to modify the execution configuration for just this method call. It is executed prior to submitting the request to the network.

Returns
Type Description
Task<CreateTopicReceipt>

A transaction receipt with a description of the newly created topic.

Examples

Create a topic gated by separate admin and submit keys:

// Create a topic with an admin key (required to update or delete it)
// and a separate submit key (required on every SubmitMessage call).
// Both key-holders must sign CreateTopic.
var receipt = await client.CreateTopicAsync(new CreateTopicParams
{
    Memo = "Gated topic",
    Administrator = adminEndorsement,
    Submitter = submitterEndorsement,
    RenewPeriod = TimeSpan.FromDays(90)
});
Console.WriteLine($"Topic: {receipt.Topic}");
Exceptions
Type Condition
ArgumentException

If required arguments are missing or invalid.

InvalidOperationException

If required context configuration is missing.

PrecheckException

If the gateway node refused the transaction. Only a code about the transaction itself proves it did not execute; any other code leaves the outcome unknown, so settle it by its transaction id on a mirror node rather than resubmitting it (see PrecheckException).

ConsensusException

If the outcome could not be confirmed: the transaction may have executed, so settle it by its transaction id on a mirror node rather than resubmitting it.

TransactionException

If the network rejected the request as invalid or had missing data.

  • Edit this page
  • View Source
In this article
Back to top .NET Client Library for Hiero Network and Hedera Hashgraph