Skip to main content
GET
/
v1
/
databases
GET /v1/databases
from metadata.sdk import configure
from metadata.sdk.entities import Databases

configure(
    host="https://your-company.open-metadata.org/api",
    jwt_token="your-jwt-token"
)

# List with pagination
page = Databases.list(limit=50, fields=["owners", "tags"])
for db in page.entities:
    print(f"{db.fullyQualifiedName}")
    if db.owners:
        print(f"  Owners: {[o.name for o in db.owners]}")

# List all with auto-pagination
all_databases = Databases.list_all(batch_size=100)
for database in all_databases:
    print(f"{database.fullyQualifiedName}")
import static org.openmetadata.sdk.fluent.Databases.*;

// Retrieve by ID
Database database = Databases.retrieve(databaseId);

// List databases
var result = Databases.list()
    .fields("owners", "tags")
    .limit(50)
    .execute();

for (Database db : result.getData()) {
    System.out.println(db.getFullyQualifiedName());
}
# List all
curl "{base_url}/api/v1/databases?limit=50" \
  -H "Authorization: Bearer {access_token}"

# Filter by service
curl "{base_url}/api/v1/databases?service=mysql_sample&limit=50" \
  -H "Authorization: Bearer {access_token}"

# With fields
curl "{base_url}/api/v1/databases?service=mysql_sample&fields=owners,databaseSchemas&limit=50" \
  -H "Authorization: Bearer {access_token}"

# With multiple fields
curl "{base_url}/api/v1/databases?service=mysql_sample&fields=owners,tags,domains,usageSummary&limit=50" \
  -H "Authorization: Bearer {access_token}"
{
  "data": [
    {
      "id": "1d08c2c6-cea7-4adf-9043-0f6a6aaf9721",
      "name": "default",
      "fullyQualifiedName": "mysql_sample.default",
      "tags": [],
      "version": 0.1,
      "updatedAt": 1769982658682,
      "updatedBy": "admin",
      "href": "http://localhost:8585/api/v1/databases/1d08c2c6-cea7-4adf-9043-0f6a6aaf9721",
      "owners": [],
      "service": {
        "id": "4724c3cb-d4b8-4ac0-aa55-e8bb66f01ac3",
        "type": "databaseService",
        "name": "mysql_sample",
        "fullyQualifiedName": "mysql_sample",
        "displayName": "mysql_sample",
        "deleted": false,
        "href": "http://localhost:8585/api/v1/services/databaseServices/4724c3cb-d4b8-4ac0-aa55-e8bb66f01ac3"
      },
      "serviceType": "Mysql",
      "databaseSchemas": [
        {
          "id": "ea2cfeb5-8daa-434d-ae22-1f56c688aa86",
          "type": "databaseSchema",
          "name": "posts_db",
          "fullyQualifiedName": "mysql_sample.default.posts_db",
          "displayName": "posts_db",
          "deleted": false,
          "href": "http://localhost:8585/api/v1/databaseSchemas/ea2cfeb5-8daa-434d-ae22-1f56c688aa86"
        }
      ],
      "default": false,
      "deleted": false,
      "sourceUrl": "https://localhost:3306/posts_db",
      "domains": [],
      "entityStatus": "Unprocessed"
    }
  ],
  "paging": {
    "after": "eyJsYXN0SWQiOiIxZDA4YzJjNi1jZWE3LTRhZGYtOTA0My0wZjZhNmFhZjk3MjEifQ==",
    "total": 8
  }
}

List Databases

List all databases with optional filtering and pagination.

Query Parameters

service
string
Filter by service fully qualified name.
domain
string
Filter by domain fully qualified name.
limit
integer
default:"10"
Maximum number of results to return (max: 1000000).
before
string
Cursor for backward pagination.
after
string
Cursor for forward pagination.
fields
string
Comma-separated list of fields to include. Valid fields: owners, databaseSchemas, usageSummary, location, tags, certification, extension, domains, sourceHash, followers.
include
string
default:"non-deleted"
Include all, deleted, or non-deleted entities.
GET /v1/databases
from metadata.sdk import configure
from metadata.sdk.entities import Databases

configure(
    host="https://your-company.open-metadata.org/api",
    jwt_token="your-jwt-token"
)

# List with pagination
page = Databases.list(limit=50, fields=["owners", "tags"])
for db in page.entities:
    print(f"{db.fullyQualifiedName}")
    if db.owners:
        print(f"  Owners: {[o.name for o in db.owners]}")

# List all with auto-pagination
all_databases = Databases.list_all(batch_size=100)
for database in all_databases:
    print(f"{database.fullyQualifiedName}")
import static org.openmetadata.sdk.fluent.Databases.*;

// Retrieve by ID
Database database = Databases.retrieve(databaseId);

// List databases
var result = Databases.list()
    .fields("owners", "tags")
    .limit(50)
    .execute();

for (Database db : result.getData()) {
    System.out.println(db.getFullyQualifiedName());
}
# List all
curl "{base_url}/api/v1/databases?limit=50" \
  -H "Authorization: Bearer {access_token}"

# Filter by service
curl "{base_url}/api/v1/databases?service=mysql_sample&limit=50" \
  -H "Authorization: Bearer {access_token}"

# With fields
curl "{base_url}/api/v1/databases?service=mysql_sample&fields=owners,databaseSchemas&limit=50" \
  -H "Authorization: Bearer {access_token}"

# With multiple fields
curl "{base_url}/api/v1/databases?service=mysql_sample&fields=owners,tags,domains,usageSummary&limit=50" \
  -H "Authorization: Bearer {access_token}"
{
  "data": [
    {
      "id": "1d08c2c6-cea7-4adf-9043-0f6a6aaf9721",
      "name": "default",
      "fullyQualifiedName": "mysql_sample.default",
      "tags": [],
      "version": 0.1,
      "updatedAt": 1769982658682,
      "updatedBy": "admin",
      "href": "http://localhost:8585/api/v1/databases/1d08c2c6-cea7-4adf-9043-0f6a6aaf9721",
      "owners": [],
      "service": {
        "id": "4724c3cb-d4b8-4ac0-aa55-e8bb66f01ac3",
        "type": "databaseService",
        "name": "mysql_sample",
        "fullyQualifiedName": "mysql_sample",
        "displayName": "mysql_sample",
        "deleted": false,
        "href": "http://localhost:8585/api/v1/services/databaseServices/4724c3cb-d4b8-4ac0-aa55-e8bb66f01ac3"
      },
      "serviceType": "Mysql",
      "databaseSchemas": [
        {
          "id": "ea2cfeb5-8daa-434d-ae22-1f56c688aa86",
          "type": "databaseSchema",
          "name": "posts_db",
          "fullyQualifiedName": "mysql_sample.default.posts_db",
          "displayName": "posts_db",
          "deleted": false,
          "href": "http://localhost:8585/api/v1/databaseSchemas/ea2cfeb5-8daa-434d-ae22-1f56c688aa86"
        }
      ],
      "default": false,
      "deleted": false,
      "sourceUrl": "https://localhost:3306/posts_db",
      "domains": [],
      "entityStatus": "Unprocessed"
    }
  ],
  "paging": {
    "after": "eyJsYXN0SWQiOiIxZDA4YzJjNi1jZWE3LTRhZGYtOTA0My0wZjZhNmFhZjk3MjEifQ==",
    "total": 8
  }
}

Returns

Returns a paginated list of database objects. By default, only basic fields are included. Use the fields parameter to request additional data.

Response

data
array
Array of database objects.
paging
object
Pagination information.