> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/api/references/database-registration/database.md).

# Database

Registration and management of the databases to be synchronized, profiled and more.

## Find Database assets

> Finds Databases based on the provided criteria.\
> \
> The response can include Databases whose underlying connection has been soft-deleted\
> in Collibra or removed from the data source. These are flagged with\
> \`edgeConnectionStatus = DELETED\` in the response.\
> \
> Use the \`edgeConnectionStatus\` query parameter to filter them out (\`ACTIVE\`)\
> or to retrieve only the deleted ones (\`DELETED\`).<br>

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.8.0"},"tags":[{"name":"Database","description":"Registration and management of the databases to be synchronized, profiled and more."}],"servers":[{"url":"/rest/catalogDatabase/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"parameters":{"EdgeConnectionStatus":{"name":"edgeConnectionStatus","in":"query","description":"Filter Databases by the status of their underlying connection.\n\nOnly `ACTIVE` and `DELETED` are accepted (case-insensitive). Any other value results in a `400 Bad Request`.\n\n- `ACTIVE`: returns only Databases whose database connection and parent Edge connection are still active.\n- `DELETED`: returns only Databases whose database connection or parent Edge connection has been soft-deleted in Collibra or removed from the data source.\n\nIf not provided, Databases are returned regardless of their connection status.\n","required":false,"schema":{"$ref":"#/components/schemas/EdgeConnectionStatus"}},"Offset":{"name":"offset","in":"query","description":"The index of the first result to retrieve.\n\nIf not set (offset = <code>0</code>), results will be retrieved starting from row <code>0</code>.\n","schema":{"type":"integer","format":"int32","default":0}},"Limit":{"name":"limit","in":"query","description":"The maximum number of results to retrieve.\n\nIf not set, the default limit  (limit = <code>0</code>) will be used. The maximum value for this parameter is\n<code>500<code>.\n","schema":{"type":"integer","format":"int32","default":0,"maximum":500}}},"schemas":{"EdgeConnectionStatus":{"type":"string","description":"Status of the connection used by a Database.\n\nKnown values (additional values may be introduced in future API versions; clients should treat\nunknown values as opaque strings):\n\n- `ACTIVE`: the database connection and its parent Edge connection are both available.\n- `DELETED`: the database connection or its parent Edge connection has been soft-deleted in Collibra or removed from the data source.\n"},"DatabasePagedResponse":{"type":"object","properties":{"results":{"type":"array","description":"The list of results.","items":{"$ref":"#/components/schemas/Database"}}}},"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true},"edgeConnectionStatus":{"allOf":[{"$ref":"#/components/schemas/EdgeConnectionStatus"}],"readOnly":true,"description":"Status of the connection used by this Database.\n\nSet to `DELETED` when the underlying database connection or its parent Edge connection\nhas been soft-deleted in Collibra or removed from the data source. Otherwise `ACTIVE`.\n\nThis field is included in responses from API version 1.7.0 onward. Older clients or cached\npayloads may omit it; treat a missing or null value as `ACTIVE`.\n"}}},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/databases":{"get":{"tags":["Database"],"summary":"Find Database assets","description":"Finds Databases based on the provided criteria.\n\nThe response can include Databases whose underlying connection has been soft-deleted\nin Collibra or removed from the data source. These are flagged with\n`edgeConnectionStatus = DELETED` in the response.\n\nUse the `edgeConnectionStatus` query parameter to filter them out (`ACTIVE`)\nor to retrieve only the deleted ones (`DELETED`).\n","operationId":"findDatabases","parameters":[{"name":"parentSystemId","in":"query","description":"The ID of the parent *System* asset.","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"edgeConnectionId","in":"query","description":"The ID of the Edge connection.","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"databaseConnectionId","in":"query","description":"The ID of the database connection","required":false,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/EdgeConnectionStatus"},{"$ref":"#/components/parameters/Offset"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Databases successfully retrieved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatabasePagedResponse"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"}}}}}}
```

## Create a Database asset

> Creates a Database asset in a specific community, which then allows the ingestion, profiling and other\
> capabilities for a specific database.<br>

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.8.0"},"tags":[{"name":"Database","description":"Registration and management of the databases to be synchronized, profiled and more."}],"servers":[{"url":"/rest/catalogDatabase/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"schemas":{"AddDatabaseRequest":{"description":"Request to register a Database asset linked with a database connection.","type":"object","required":["databaseConnectionId","communityId","parentSystemId"],"anyOf":[{"required":["responsibleUserId"]},{"required":["ownerIds"]}],"properties":{"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection. The name of a database connection becomes the name of Database asset.\n"},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset will be created."},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent *System* asset. After registering a database, a relation of type *Technology Asset groups / is grouped by technology Asset* is created between the System asset and the Database asset."},"ownerIds":{"type":"array","deprecated":true,"description":"Deprecated. Use `responsibleUserId` instead. The IDs of the users that are assigned as the Owner of the\nautomatically created domain containing the Database asset. Kept for backward compatibility; one of\n`responsibleUserId` or `ownerIds` must be provided.\n","items":{"type":"string","format":"uuid"}},"responsibleUserId":{"type":"string","format":"uuid","description":"The ID of the user to assign as the responsible party on the automatically created domain containing\nthe Database asset. Takes precedence over `ownerIds` if both are provided. One of `responsibleUserId`\nor `ownerIds` must be provided.\n"},"responsibilityRoleId":{"type":"string","format":"uuid","description":"The ID of the resource role to assign to the responsible user. Defaults to Owner\n(`00000000-0000-0000-0000-000000005040`) if omitted. Must be a resource role (not global) that\nincludes the `COMMUNITY_CONFIGURE_EXTERNAL_SYSTEM` permission.\n"},"description":{"type":"string","description":"A description of the database."}}},"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true},"edgeConnectionStatus":{"allOf":[{"$ref":"#/components/schemas/EdgeConnectionStatus"}],"readOnly":true,"description":"Status of the connection used by this Database.\n\nSet to `DELETED` when the underlying database connection or its parent Edge connection\nhas been soft-deleted in Collibra or removed from the data source. Otherwise `ACTIVE`.\n\nThis field is included in responses from API version 1.7.0 onward. Older clients or cached\npayloads may omit it; treat a missing or null value as `ACTIVE`.\n"}}},"EdgeConnectionStatus":{"type":"string","description":"Status of the connection used by a Database.\n\nKnown values (additional values may be introduced in future API versions; clients should treat\nunknown values as opaque strings):\n\n- `ACTIVE`: the database connection and its parent Edge connection are both available.\n- `DELETED`: the database connection or its parent Edge connection has been soft-deleted in Collibra or removed from the data source.\n"},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/databases":{"post":{"summary":"Create a Database asset","description":"Creates a Database asset in a specific community, which then allows the ingestion, profiling and other\ncapabilities for a specific database.\n","operationId":"addDatabase","tags":["Database"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddDatabaseRequest"}}}},"responses":{"201":{"description":"Database asset successfully created.","headers":{"Location":{"description":"Reference to the database GET API","schema":{"type":"string","format":"url"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Database"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"}}}}}}
```

## Get a Database asset

> Gets a single Database asset by its identifier.\
> \
> The response includes an \`edgeConnectionStatus\` field that indicates whether the underlying\
> connection used by the Database is still active. The status is \`DELETED\` when the\
> database connection or its parent Edge connection has been soft-deleted in Collibra\
> or removed from the data source.<br>

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.8.0"},"tags":[{"name":"Database","description":"Registration and management of the databases to be synchronized, profiled and more."}],"servers":[{"url":"/rest/catalogDatabase/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"schemas":{"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true},"edgeConnectionStatus":{"allOf":[{"$ref":"#/components/schemas/EdgeConnectionStatus"}],"readOnly":true,"description":"Status of the connection used by this Database.\n\nSet to `DELETED` when the underlying database connection or its parent Edge connection\nhas been soft-deleted in Collibra or removed from the data source. Otherwise `ACTIVE`.\n\nThis field is included in responses from API version 1.7.0 onward. Older clients or cached\npayloads may omit it; treat a missing or null value as `ACTIVE`.\n"}}},"EdgeConnectionStatus":{"type":"string","description":"Status of the connection used by a Database.\n\nKnown values (additional values may be introduced in future API versions; clients should treat\nunknown values as opaque strings):\n\n- `ACTIVE`: the database connection and its parent Edge connection are both available.\n- `DELETED`: the database connection or its parent Edge connection has been soft-deleted in Collibra or removed from the data source.\n"},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/databases/{databaseId}":{"get":{"tags":["Database"],"summary":"Get a Database asset","description":"Gets a single Database asset by its identifier.\n\nThe response includes an `edgeConnectionStatus` field that indicates whether the underlying\nconnection used by the Database is still active. The status is `DELETED` when the\ndatabase connection or its parent Edge connection has been soft-deleted in Collibra\nor removed from the data source.\n","operationId":"getDatabase","responses":{"200":{"description":"Database successfully retrieved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Database"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"}}}}}}
```

## Change a Database asset

> \
> Changes a Database asset based on its identifier and a set of properties\
> &#x20; to change.\
> \
> &#x20; This is a partial update and properties that are not provided will not be changed.<br>

```json
{"openapi":"3.0.3","info":{"title":"Collibra Catalog Database Registration API","version":"1.8.0"},"tags":[{"name":"Database","description":"Registration and management of the databases to be synchronized, profiled and more."}],"servers":[{"url":"/rest/catalogDatabase/v1"}],"security":[{"basicAuth":[]},{"jwtAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"Collibra REST API authentication using Basic Authentication."},"jwtAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Collibra REST API authentication using JSON Web Token."}},"schemas":{"ChangeDatabaseRequest":{"type":"object","description":"Request to change a Database asset. Only the provided properties are updated.","properties":{"description":{"type":"string","description":"A description of the database."},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset.\n\nAfter registering a database, a relation of type *Technology Asset groups / is grouped by technology Asset*\nis created between the System asset and the Database asset.\n"},"ownerIds":{"type":"array","deprecated":true,"description":"Deprecated. Use `responsibleUserId` instead. The ID of the users that will be assigned as the Owner of\nexisting domain containing the Database asset. Kept for backward compatibility.\n","items":{"type":"string","format":"uuid"}},"responsibleUserId":{"type":"string","format":"uuid","description":"The ID of the user to assign as the responsible party on the domain containing the Database asset.\nTakes precedence over `ownerIds` if both are provided.\n\n`responsibleUserId` and `responsibilityRoleId` can be set independently of each other:\n- If only `responsibleUserId` is provided, the new user is assigned under the currently configured\n  role (or Owner, if none was configured).\n- If only `responsibilityRoleId` is provided, the currently responsible user is re-assigned under the\n  new role.\n- If both are provided, the new user is assigned under the new role.\n- If neither is provided, the responsibility is left unchanged.\n"},"responsibilityRoleId":{"type":"string","format":"uuid","description":"The ID of the resource role to assign to the responsible user. If omitted, the previously configured\nrole is kept (or Owner, if none was configured). Must be a resource role (not global) that includes\nthe `COMMUNITY_CONFIGURE_EXTERNAL_SYSTEM` permission.\n\nSee `responsibleUserId` for how this field interacts with the responsible user when only one of the\ntwo is provided.\n"}}},"Database":{"type":"object","description":"A Database asset created trough database registration with all necessary information required to run\ncapabilities on top of it.\n","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the Database asset.","readOnly":true},"name":{"type":"string","description":"The name of the Database asset."},"description":{"type":"string","description":"A description of the Database asset."},"communityId":{"type":"string","format":"uuid","description":"The ID of the parent community in which the initial domain and database asset are created."},"ownerIds":{"type":"array","items":{"type":"string","format":"uuid","description":"Users that are assigned as the Owner of the Database asset."}},"parentSystemId":{"type":"string","format":"uuid","description":"The ID of the parent System asset."},"databaseConnectionId":{"type":"string","format":"uuid","description":"The ID of the database connection linked to the Database asset."},"edgeConnectionId":{"type":"string","format":"uuid","description":"The ID of the Edge connection.","deprecated":true},"edgeConnectionStatus":{"allOf":[{"$ref":"#/components/schemas/EdgeConnectionStatus"}],"readOnly":true,"description":"Status of the connection used by this Database.\n\nSet to `DELETED` when the underlying database connection or its parent Edge connection\nhas been soft-deleted in Collibra or removed from the data source. Otherwise `ACTIVE`.\n\nThis field is included in responses from API version 1.7.0 onward. Older clients or cached\npayloads may omit it; treat a missing or null value as `ACTIVE`.\n"}}},"EdgeConnectionStatus":{"type":"string","description":"Status of the connection used by a Database.\n\nKnown values (additional values may be introduced in future API versions; clients should treat\nunknown values as opaque strings):\n\n- `ACTIVE`: the database connection and its parent Edge connection are both available.\n- `DELETED`: the database connection or its parent Edge connection has been soft-deleted in Collibra or removed from the data source.\n"},"StandardErrorResponse":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP response code"},"titleMessage":{"type":"string"},"helpMessage":{"type":"string"},"userMessage":{"type":"string"},"errorCode":{"type":"string"}}}},"responses":{"InvalidRequest400":{"description":"The request is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest401":{"description":"The client is not authenticated.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest403":{"description":"The user lacks permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}},"InvalidRequest404":{"description":"Resource not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StandardErrorResponse"}}}}}},"paths":{"/databases/{databaseId}":{"patch":{"tags":["Database"],"summary":"Change a Database asset","description":"\nChanges a Database asset based on its identifier and a set of properties\n  to change.\n\n  This is a partial update and properties that are not provided will not be changed.\n","operationId":"changeDatabase","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangeDatabaseRequest"}}}},"responses":{"200":{"description":"Database asset successfully updated. The response includes the updated Database.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Database"}}}},"400":{"$ref":"#/components/responses/InvalidRequest400"},"401":{"$ref":"#/components/responses/InvalidRequest401"},"403":{"$ref":"#/components/responses/InvalidRequest403"},"404":{"$ref":"#/components/responses/InvalidRequest404"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://developer.collibra.com/api/references/database-registration/database.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
