> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/internal-developer-portal/3.0/admin-and-customization/custom-entity-kinds/manage-custom-kind.md).

# Manage a Custom Entity Kind

Learn how to edit the schema and icon of a custom entity kind, configure its layout, and delete it from the IDP Catalog.

To manage an existing custom kind, go to **Custom Kinds**, find the kind in the list, and click **Manage**. The kind's management page opens showing the icon, schema editor, layout status, and more.

![Figure 1: The 'Manage' page for a Custom Kind](https://952681866-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIASk02HMWhfpIfMkZPlA%2Fuploads%2Fgit-blob-e24ae309fdb73ae4d9494171016180aaef6601e4%2Fmanage-kind.png?alt=media)

***

### Edit the schema or icon <a href="#edit-the-schema-or-icon" id="edit-the-schema-or-icon"></a>

1. To change the icon, click **Change Icon** and select a new one from the picker.
2. To update the schema, edit the JSON directly in the editor, then click **Validate Schema** to confirm it is valid.
3. Click **Update** to save your changes, or **Cancel** to discard them.

{% hint style="warning" %}
**WHAT HAPPENS TO EXISTING ENTITIES**

* If your updated schema makes existing entities non-conformant, you will see a warning but you can still proceed. Affected entities will show a **"kind updated: action required"** banner on their catalog page until the entity owner updates them.
* There is no schema rollback. Communicate planned schema changes to your team before applying them, and make sure entity owners know to update their records afterwards.
  {% endhint %}

***

### Configure a layout <a href="#configure-a-layout" id="configure-a-layout"></a>

By default, entities of a custom kind use the IDP default catalog layout. The **Default layout in use** notice on the Manage page shows this status.

1. Click **Update Layout** to go to the **Catalog Entities** layout page.

   ![Figure 2: Changing Default Layout](https://952681866-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIASk02HMWhfpIfMkZPlA%2Fuploads%2Fgit-blob-71df23e6a0e38910fd0caa996ca8a6fa4137a884%2Fcatalog-entities-layout.png?alt=media)

   Your custom kinds appear under the **Custom Entities** section in the left panel.
2. Click **+ New Catalog Layout**. A dialog opens.

   ![Figure 3: New Layout for Custom Kind Entity](https://952681866-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIASk02HMWhfpIfMkZPlA%2Fuploads%2Fgit-blob-35732b0aab98b53f50c571872d5e1922d511a2d0%2Fcreate-catalog-layout.png?alt=media)
3. From the **Select Entity Kind** dropdown, choose your custom kind. Both built-in and custom kinds are listed here.
4. In the **Specify Entity Type** field, enter an entity type to scope this layout to a specific type (e.g., `library`).

   ![Figure 4: Specifying an Entity Type for the Layout](https://952681866-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIASk02HMWhfpIfMkZPlA%2Fuploads%2Fgit-blob-8c9b9e3e3149a08edb39a100f44b5499c5e2c0f0%2Fspecify-entity-kind-type.gif?alt=media)

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>Entity type is case-insensitive and comes from <code>spec.type</code> in the catalog entity YAML. Leave this field empty to apply the layout to all types of this kind.</p></div>
5. Click **Continue** to open the [layout editor](/internal-developer-portal/3.0/admin-and-customization/layout-and-appearance/catalog.md#layout-editor) and build your layout.

***

### Delete a kind <a href="#delete-a-kind" id="delete-a-kind"></a>

{% hint style="danger" %}
Deleting a kind permanently removes it from the catalog along with all its entities, layout configuration, scorecard configurations, and related settings. This action cannot be undone.
{% endhint %}

You can delete a kind in two ways:

* **From the Kinds' listing page** - Hover over the kind's card, click the **⋮** context menu, and click **Delete**.
* **From the Manage page** - Scroll to the **Danger Zone** section and click the red **Delete** button.

Either way, a confirmation dialog appears showing an **Entities affected** list so you can see exactly what will be removed.

![Figure 5: Deletion of Custom Kind](https://952681866-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIASk02HMWhfpIfMkZPlA%2Fuploads%2Fgit-blob-90d8ecedc73076fbfb90088711ed16462700c14e%2Fdelete-kind-confirm.gif?alt=media)

Click **Delete** to confirm, or **Cancel** to go back.

{% @harness-feedback/feedback %}
