> 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/database-devops/3.0/troubleshooting-and-resources/troubleshooting-guide/dbschema-structure.md).

# Reserved Keywords in DB Schemas

When defining a **DB Schema** in Harness Database DevOps, each schema must have a unique `identifier`. This identifier serves as the reference handle across pipeline configurations, API calls, and backend services.

As part of platform-level constraints, the identifier `overview` is **reserved** and **must not be used** when creating or referencing a DB Schema.

### Why this matters <a href="#why-this-matters" id="why-this-matters"></a>

Harness exposes internal REST endpoints to retrieve metadata and usage information for Database DevOps entities. One such endpoint is:

```sh
/v1/orgs/{org}/projects/{project}/dbschema/overview
```

If a DB Schema is created using the identifier `overview`, it will result in a direct conflict with this reserved API route. This would break routing logic and lead to ambiguous or failed API behavior.

To safeguard against this, the platform enforces validation to prevent the use of `overview` as a DB Schema identifier.

### What is considered a DB Schema identifier? <a href="#what-is-considered-a-db-schema-identifier" id="what-is-considered-a-db-schema-identifier"></a>

A DB Schema identifier is a logical and system-resolvable key used internally to reference a specific database changelog configuration. It is **not the same** as a Liquibase `changeset` ID.

For example:

```yaml
dbSchema:
  identifier: user-service-schema   # This is the DB Schema ID (not a changeset)
  name: User Service Schema
```

### What happens if you use "overview"? <a href="#what-happens-if-you-use-overview" id="what-happens-if-you-use-overview"></a>

Attempting to use `overview` as the identifier for a DB Schema will result in a validation error at the API or UI level. This is an intentional safeguard to avoid platform-level routing conflicts.

#### Invalid DB Schema identifier <a href="#invalid-db-schema-identifier" id="invalid-db-schema-identifier"></a>

```yaml
dbSchema:
  identifier: overview     # Invalid: Conflicts with internal API endpoint
  name: Main Schema
```

#### Valid DB Schema identifier <a href="#valid-db-schema-identifier" id="valid-db-schema-identifier"></a>

```yaml
dbSchema:
  identifier: orders-schema
  name: Orders Service Schema
```

### Best practices <a href="#best-practices" id="best-practices"></a>

When creating DB Schemas, consider the following best practices:

* Use descriptive and unique identifiers for all DB Schemas.
* Avoid reserved or commonly used route terms such as `overview`, `default`, `admin`, etc.
* Stick to lowercase letters, numbers, and hyphens (-) to ensure compatibility and clarity.

{% hint style="info" %}
**NOTE**

This restriction only applies to the identifier of the schema. You are still allowed to use the word "overview" in the **name**, **description**, or **comments** of the schema configuration.
{% endhint %}

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

* Go to [Database DevOps onboarding guide](/database-devops/3.0/new-to-database-devops/onboarding-guide.md#2-configure-your-database-schema) to understand how to define and manage your database changelog configurations.
* Explore our [Database DevOps](/database-devops/3.0/readme.md) guide for a comprehensive overview of Harness Database DevOps features.
