> ## Documentation Index
> Fetch the complete documentation index at: https://docs.incident.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Managing Catalog Types in GitHub

This feature is useful when you want to version control catalog types you've created in the incident.io dashboard.

<img src="https://mintcdn.com/incidentio-18bb4170/iopR3BNEfSUPs05k/images/help-centre/managing-catalog-types-in-github/screenshot-1.png?fit=max&auto=format&n=iopR3BNEfSUPs05k&q=85&s=de4d2d525fe4e8df32d3ff4bbd6da2cb" alt="" width="3048" height="1574" data-path="images/help-centre/managing-catalog-types-in-github/screenshot-1.png" />

This feature will generate all the files you need, and configure GitHub to automatically sync changes you make from the repository to the catalog in incident.io.

Once you've configured a catalog type to be managed in GitHub, you'll no longer be able to edit it through the dashboard.

## Can I use it?

If you have access to custom types in the catalog, you can also use the manage in GitHub feature.

## How do I use it?

On the catalog homepage, above your custom types, there's a "Manage in GitHub" button. Clicking it will take you through the process of configuring one or more catalog types to be managed in GitHub.

<img src="https://mintcdn.com/incidentio-18bb4170/iopR3BNEfSUPs05k/images/help-centre/managing-catalog-types-in-github/screenshot-2.png?fit=max&auto=format&n=iopR3BNEfSUPs05k&q=85&s=07d285d1dff779ef5fcb939c5458ff15" alt="" width="1014" height="584" data-path="images/help-centre/managing-catalog-types-in-github/screenshot-2.png" />

## How do I change catalog types once they're managed in GitHub?

To change catalog types, edit the [jsonnet](https://jsonnet.org/) files in your repository and open a pull request.

<img src="https://mintcdn.com/incidentio-18bb4170/iopR3BNEfSUPs05k/images/help-centre/managing-catalog-types-in-github/screenshot-3.png?fit=max&auto=format&n=iopR3BNEfSUPs05k&q=85&s=5b6304be92884349af966234f82d0121" alt="" width="1536" height="684" data-path="images/help-centre/managing-catalog-types-in-github/screenshot-3.png" />

A GitHub action will run and show you the changes that will be made to the catalog.

<img src="https://mintcdn.com/incidentio-18bb4170/iopR3BNEfSUPs05k/images/help-centre/managing-catalog-types-in-github/screenshot-4.png?fit=max&auto=format&n=iopR3BNEfSUPs05k&q=85&s=b4322077d5438ec7a7ec022ada668171" alt="" width="1032" height="578" data-path="images/help-centre/managing-catalog-types-in-github/screenshot-4.png" />

If you're happy with the changes, merge the pull request and another action will run and sync the change to your incident.io catalog.

## How does it work?

Under the hood, this feature uses our [catalog importer](https://github.com/incident-io/catalog-importer). This is a flexible tool for syncing external data in to the catalog. If you're looking to do more complex things with external data in the catalog, the examples included with the catalog importer are a great place to start.
