> 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/use-idp/software-catalog/overview.md).

# Overview

The **Software Catalog** is the central hub of Harness Internal Developer Portal (IDP). It serves as a unified, searchable registry of all your software assets including services, APIs, libraries, websites, databases, and more. Think of it as your organization's **comprehensive directory of software entities**, providing a single source of truth for ownership, metadata, dependencies, and relationships across your entire software ecosystem.

The catalog helps you:

* **Discover** all software assets across your organization
* **Track ownership** and understand who is responsible for each component
* **Visualize dependencies** and relationships between services
* **Maintain metadata** such as lifecycle stage, tech stack, and documentation
* **Enable self-service** for developers to find and use existing services
* **Improve governance** with centralized visibility and [OPA policy enforcement](/internal-developer-portal/admin-and-customization/governance/opa-governance.md)

![](/files/bZviBt687UGX4E1HuJkH)

***

### What are catalog entities? <a href="#what-are-catalog-entities" id="what-are-catalog-entities"></a>

**Entities** are the building blocks of your Software Catalog. Each entity represents a distinct software asset in your organization and contains structured metadata that describes its purpose, ownership, and relationships.

#### Core entity types <a href="#core-entity-types" id="core-entity-types"></a>

Harness IDP supports several core entity types:

* [**Component**](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/5CgOmHvm7yczZ9omemrb#idp2.0--component): Services, libraries, websites, or any deployable software unit
* [**API**](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/5CgOmHvm7yczZ9omemrb#idp2.0--api): REST APIs, GraphQL endpoints, or other programmatic interfaces
* [**Resource**](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/5CgOmHvm7yczZ9omemrb#idp2.0--resource): Databases, message queues, storage buckets, or infrastructure resources
* [**System**](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/5CgOmHvm7yczZ9omemrb#idp2.0--system): Logical groupings of related components, APIs, and resources
* [**Team**](/internal-developer-portal/use-idp/software-catalog/teams/overview.md): Squads, departments, or other organizational units that own catalog entities

Each entity type has its own schema and metadata fields tailored to its specific purpose. For a comprehensive understanding of entity types, their structure, and relationships, refer to the [Catalog Data Model](/internal-developer-portal/use-idp/software-catalog/data-model/data-model.md).

***

### Populate your catalog <a href="#populate-your-catalog" id="populate-your-catalog"></a>

There are multiple ways to add entities to your Software Catalog, each suited for different use cases and workflows:

#### 1. Create entities manually <a href="#id-1-create-entities-manually" id="id-1-create-entities-manually"></a>

In IDP 2.0, entity creation is simplified with full UI support and optional YAML-based creation. Entities are now **"inline,"** which means their entire lifecycle can be managed through the UI or API, without Git integration.

You can create entities directly via the **Harness IDP UI** with no YAML required for a streamlined, code-free experience. Alternatively, you can use your existing catalog YAML files, and Harness will **automatically convert legacy Backstage YAML** into the new Harness Catalog Entity Model.

[Learn more about creating entities manually →](/internal-developer-portal/use-idp/software-catalog/create-entity/create-manually.md)

#### 2. Import from Git <a href="#id-2-import-from-git" id="id-2-import-from-git"></a>

Create new entities and Workflows by **importing their YAML definitions** stored in Git repositories directly into Harness IDP. This feature allows teams to reuse pre-defined configurations, onboard services faster, and migrate from automation workflows or existing repositories.

[Learn more about importing from Git →](/internal-developer-portal/use-idp/software-catalog/create-entity/import-from-git.md)

#### 3. Auto-discovery <a href="#id-3-auto-discovery" id="id-3-auto-discovery"></a>

Use the **Harness IDP Catalog Auto-Discovery** integration to sync **Harness CD** services into the **IDP Catalog**. This integration populates your Catalog with CD services so you can sync, view, and manage them directly in Catalog. Services are created as **IDP service entities** and kept in **real-time, uni-directional sync** with their corresponding CD services.

[Learn more about catalog auto-discovery →](/internal-developer-portal/use-idp/software-catalog/create-entity/catalog-discovery/integrations/harness-cd.md)

***

### Manage your catalog <a href="#manage-your-catalog" id="manage-your-catalog"></a>

Once your entities are registered, you can:

* **Edit entities** to update metadata, ownership, or configuration
* **View entity relationships** to understand dependencies and system architecture
* **Organize entities** using Systems to group related components
* **Search and filter** to quickly find the entities you need
* **Customize the catalog UI** to display the information most relevant to your teams

[Learn more about managing your catalog →](/internal-developer-portal/use-idp/software-catalog/manage-catalog.md)

To understand everything available on an individual entity page, including the `IntegrationsContent` card, all available tabs, and the Entity Inspector, see the [Entity Details Page](/internal-developer-portal/use-idp/software-catalog/create-entity/entity-details.md) reference.

***

### Next steps <a href="#next-steps" id="next-steps"></a>

Ready to get started with the Software Catalog? Here are some recommended next steps:

1. **Understand the Data Model**: Learn about entity types, schemas, and relationships in the [Catalog Data Model](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/5CgOmHvm7yczZ9omemrb#idp2.0)
2. **Create Your First Entity**: Follow the guide to [create entities manually](/internal-developer-portal/use-idp/software-catalog/create-entity/create-manually.md)
3. **Set Up Auto-Discovery**: Automate entity registration with [catalog auto-discovery](/internal-developer-portal/use-idp/software-catalog/create-entity/catalog-discovery/integrations/harness-cd.md)
4. **Customize Your Catalog**: Configure the [catalog UI](https://developer.harness.io/internal-developer-portal/use-idp/software-catalog/pages/Wnh2PrpJGdrUuNZxSdo7#idp2.0--manage-catalog-ui) to match your team's needs
5. **Write Catalog YAML**: Learn the [YAML schema](/internal-developer-portal/use-idp/software-catalog/catalog-yaml.md) for defining entities
6. **Enforce Governance Policies**: Block or warn on non-compliant entities at save time using [Centralized Policy Governance](/internal-developer-portal/admin-and-customization/governance/opa-governance.md)
