# Topics

## Topic routes

There are 3 routes that help to manage a given topic before sending consensus messages. The focus is that if you have a particular group of users or a particular app that you wish to have a separate topic to keep track of messages you can do so with different topics.

{% hint style="info" %}
Please note that currently the creation of new topics automatically set the admin key to be the public key of the account of the deployed client. This means that a topic may only be updated by that account, the memo can only be changed.
{% endhint %}

All routes required authentication through the **x-api-key** and a escaped JSON value can be injected into the memo to hold more information about the topic.

### Get topic info

Get the topic information using a supplied **topic\_id.**

{% content-ref url="topics/get-topic-info" %}
[get-topic-info](https://docs.trust.enterprises/rest-api/topics/get-topic-info)
{% endcontent-ref %}

### Create new topic

Create a topic with 2 optional values, the **memo** or the **enable\_private\_submit\_key** which stops any other account to successfully sent a consensus message to the topic.

{% content-ref url="topics/creating-a-new-topic" %}
[creating-a-new-topic](https://docs.trust.enterprises/rest-api/topics/creating-a-new-topic)
{% endcontent-ref %}

### Update a current topic

Update the memo of a given topic by providing a **memo** property to the body.

{% content-ref url="topics/updating-a-topic" %}
[updating-a-topic](https://docs.trust.enterprises/rest-api/topics/updating-a-topic)
{% endcontent-ref %}
