Class CreateTopicParams
Consensus Topics Creation Parameters.
Inherited Members
Namespace: Hiero
Assembly: Hiero.dll
Syntax
public sealed class CreateTopicParams : TransactionParams<CreateTopicReceipt>
Examples
Create a plain public topic — anyone can submit messages, but only the payer can pay auto-renewal fees:
var createReceipt = await client.CreateTopicAsync(new CreateTopicParams
{
Memo = "Hiero SDK Sample Topic",
RenewPeriod = TimeSpan.FromDays(90),
RenewAccount = new EntityId(0, 0, payerNum)
});
Console.WriteLine($"Topic created: {createReceipt.Topic}");
Properties
| Edit this page View SourceAdministrator
An optional endorsement, when specified, can be used to authorize a modification or deletion of this topic, including control of topic lifetime extensions. Additionally, if null, any account can extend the topic lifetime.
Declaration
public Endorsement? Administrator { get; set; }
Property Value
| Type | Description |
|---|---|
| Endorsement |
CancellationToken
Optional cancellation token that can interrupt the submission process.
Declaration
public CancellationToken? CancellationToken { get; set; }
Property Value
| Type | Description |
|---|---|
| CancellationToken? |
Memo
Short description of the topic, not checked for uniqueness.
Declaration
public string? Memo { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
RenewAccount
Optional address of the account supporting the auto renewal of the topic at expiration time. The topic lifetime will be extended by the RenewPeriod at expiration time if this account contains sufficient funds. The private key associated with this account must sign the transaction if RenewAccount is specified.
Declaration
public EntityId? RenewAccount { get; set; }
Property Value
| Type | Description |
|---|---|
| EntityId |
Remarks
If specified, an Administrator Endorsement must also be specified.
RenewPeriod
Initial lifetime of the topic and auto-renewal period. If the associated account does not have sufficient funds to renew at the expiration time, it will be renewed for a period of time the remaining funds can support. If no funds remain, the topic instance will be deleted.
Declaration
public TimeSpan RenewPeriod { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan |
Signatory
Additional private key, keys or signing callback method required to create this topic. Typically matches the Administrator, Submitter and RenewAccount key(s) associated with this topic.
Declaration
public Signatory? Signatory { get; set; }
Property Value
| Type | Description |
|---|---|
| Signatory |
Remarks
Keys/callbacks added here will be combined with those already identified in the client object's context when signing this transaction to change the state of this topic.
Submitter
Identify any key requirements for submitting messages to this topic. If left blank, any account may submit messages to this topic, otherwise they must meet the specified signing requirements.
Declaration
public Endorsement? Submitter { get; set; }
Property Value
| Type | Description |
|---|---|
| Endorsement |