# Topics

## Overview

Topics are data schemas that define and standardize the payload of messages sent between different actors in the platform. Topics are grouped under [Applications ](/energy-solutions/digital-spine-by-energy-web/component-guides/self-sovereign-identities/technical-guide/applications.md)and administered by Application owners (specifically Admin Users in the Client Gateway). They can be updated over time to accommodate changes in the data schema through versioning.

There are 4 types of data schema supported in the Client Gateway topics which are:

* JSD7
* XML
* CSV
* TSV

***

## User Guide

### Pre-requisites

* Authorization to Client Gateway
* `topiccreator` role

### Create a Topic

1. Navigate to `Topic Management` and select an application for your new topic

<figure><img src="/files/3Sjzwz2p9XMWSOWBXC5q" alt=""><figcaption><p>Apps and Topics</p></figcaption></figure>

2. Click `Create`&#x20;

<figure><img src="/files/X6cumK0wGZuvxzcRsXBR" alt=""><figcaption><p>Topic List</p></figcaption></figure>

3. Fill up the create topic form and click `Save`&#x20;

{% hint style="success" %}
Organize your topics effectively by using tags
{% endhint %}

<figure><img src="/files/syWzXu3KeG4s6ifIfUcW" alt=""><figcaption><p>Create topic form</p></figcaption></figure>

4. Success message will be shown, click `Dismiss` to close modal and view the topic list

<figure><img src="/files/GIIkfp26bUfos8ICyUz3" alt="" width="375"><figcaption><p>Successfully created topic</p></figcaption></figure>

### Modify a Topic

1. Search for the topic that you would like to modify. Click on the `︙` button at the end of the record row and choose `View version history`&#x20;

<figure><img src="/files/nB46qQkZ2SWD8uf4nAKF" alt=""><figcaption><p>View version history</p></figcaption></figure>

2. Click on the `︙` button of the topic version you would like to update and choose  `Update`&#x20;

<figure><img src="/files/HthrvwKWybty3MMNaxlh" alt=""><figcaption><p>Update topic</p></figcaption></figure>

3. Make changes to the schema, you may also bump the version and the older version will keep the original schema instead

<figure><img src="/files/2ATb6kDJw6mKD7CpV5YA" alt=""><figcaption><p>Update topic form</p></figcaption></figure>

4. Success message will be shown, click `Dismiss` to close modal and view the version history list

<figure><img src="/files/e49pThPMoksBmYC7uGuW" alt="" width="375"><figcaption><p>Successfully updated topic</p></figcaption></figure>

### Remove a Version History

1. Click on the `︙` button of the topic version you would like to remove and choose  `Remove`&#x20;

<figure><img src="/files/C47F2vAiXTLfne9bUG3P" alt=""><figcaption><p>Remove a version history</p></figcaption></figure>

2. A confirmation modal will appear, click `Confirm` to remove the version history from topic or `Cancel`&#x20;

<figure><img src="/files/fYT2eZx7i1DCQDjbYCyP" alt="" width="375"><figcaption><p>Delete version history confirmation modal</p></figcaption></figure>

3. Success message will be shown, click `Dismiss` to close modal and view the version history list

<figure><img src="/files/MNusi4VMAqfbJxVdqqhZ" alt="" width="375"><figcaption><p>Successfully deleted version history</p></figcaption></figure>

### Remove a Topic

1. Search for the topic that you would like to remove. Click on the `︙` button at the end of the record row and choose `Remove`&#x20;

<figure><img src="/files/gBTuSXjg101KIe1evKOv" alt=""><figcaption><p>Remove topic</p></figcaption></figure>

2. A confirmation modal will appear, click `Confirm` to remove the topic or `Cancel`&#x20;

<figure><img src="/files/fYT2eZx7i1DCQDjbYCyP" alt="" width="375"><figcaption><p>Delete topic confirmation modal</p></figcaption></figure>

3. Success message will be shown, click `Dismiss` to close modal and view the topics list

<figure><img src="/files/MNusi4VMAqfbJxVdqqhZ" alt="" width="375"><figcaption><p>Successfully deleted topics</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-launchpad.energyweb.org/energy-solutions/digital-spine-by-energy-web/component-guides/ddhub-client-gateway/technical-guide/topics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
