---
title: Custom Entities
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: >-
  Docs > Internal Developer Portal > Software Catalog > Entity Model > Custom
  Entities
---

# Custom Entities

{% callout %}
# Important note for users on the following Datadog sites: app.ddog-gov.com

{% alert level="danger" %}
This product is not supported for your selected [Datadog site](https://docs.datadoghq.com/getting_started/site). ().
{% /alert %}

{% /callout %}

## Overview{% #overview %}

As of [schema definition v3.0](https://docs.datadoghq.com/internal_developer_portal/software_catalog/entity_model)+, you can define custom entity types beyond the [native types](https://docs.datadoghq.com/internal_developer_portal/software_catalog/entity_model/native_entities) (such as service, datastore, or queue).

Custom entities allow you to represent any component or resource that is important to your organization but does not fit into the standard categories. For example, you might create custom entity types for libraries, pipelines, ML models, or infrastructure components.

See GitHub for [full schema definitions](https://github.com/DataDog/schema/tree/main/service-catalog/v3).

## Create a custom entity type{% #create-a-custom-entity-type %}

You can create custom entity types in Datadog or through the Software Catalog API. After creating the type, you can add entities of that type in Datadog or programmatically through the [Software Catalog APIs](https://docs.datadoghq.com/api/latest/software-catalog/#create-or-update-entities), [GitHub integration](https://docs.datadoghq.com/integrations/github/), or [Terraform module](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/software_catalog).

### In Datadog{% #in-datadog %}

1. Navigate to **APM** > **Software Catalog**, and click [**Manage**](https://app.datadoghq.com/software/settings/get-started).

1. Click **Manage Custom Entity Types** to view existing entity types, native and custom.

   {% image
      source="https://datadog-docs.imgix.net/images/tracing/internal_developer_portal/manage-entity-types.236213d31e7af6c6e7ef146e4282b70e.png?auto=format"
      alt="The Manage Entity Types pop-up window, showing existing native and custom types and a button to create a custom entity type" /%}

1. Click **Add Custom Entity Type** to add a type.

If you close the window and select **Create New Entry**, your custom type appears in the `kind` dropdown at the top of the pop-up window.

{% image
   source="https://datadog-docs.imgix.net/images/tracing/internal_developer_portal/custom-type-in-dropdown.94188cb0f4af720e5ded93b4083c9eac.png?auto=format"
   alt="The Create New Entry pop-up window, showing the kind dropdown which includes custom entity types" /%}

### Through the API{% #through-the-api %}

Alternatively, define your custom types through the [Software Catalog API](https://docs.datadoghq.com/api/latest/software-catalog/#create-or-update-kinds).

### Example entity{% #example-entity %}

In the following example, a user defines an entity of custom type `library` with links, tags, and owning teams:

In the `entity.datadog.yaml` file:

```yaml
apiVersion: v3
kind: library
metadata:
  name: my-library
  displayName: My Library
  tags:
    - tag:value
  links:
    - name: shopping-cart runbook
      type: runbook
      url: https://runbook/shopping-cart
    - name: shopping-cart architecture
      provider: gdoc
      url: https://google.drive/shopping-cart-architecture
      type: doc
    - name: shopping-cart Wiki
      provider: wiki
      url: https://wiki/shopping-cart
      type: doc
    - name: shopping-cart source code
      provider: github
      url: http://github/shopping-cart
      type: repo
  contacts:
    - name: Support Email
      type: email
      contact: team@shopping.com
    - name: Support Slack
      type: slack
      contact: https://www.slack.com/archives/shopping-cart
  owner: myteam
  additionalOwners:
    - name: opsTeam
      type: operator
```

## Further reading{% #further-reading %}

- [Create entities in Software Catalog](https://docs.datadoghq.com/internal_developer_portal/software_catalog/set_up/create_entities)
- [Learn about native entity types](https://docs.datadoghq.com/internal_developer_portal/software_catalog/entity_model/native_entity_types)
