---
title: "Update database by ID"
method: PUT
path: "/databases/{id}"
tags: ["Database"]
---

# Update database by ID

`PUT /databases/{id}`

Update database configuration by ID

## Path parameters

- `id` string, required — MongoDB ObjectId represented as a hexadecimal string

## Request body

- Database
  - `_id` string — MongoDB ObjectId represented as a hexadecimal string
  - `name` string
  - `description` string
  - `data_source` string — Type of database (mongodb, mysql, etc.)
  - `host` string
  - `port` integer
  - `uri` string
  - `database` string
  - `username` string
  - `password` string
  - `status` string
  - `error` string
  - `active` boolean
  - `active_at` string, date-time
  - `is_default` boolean
  - `mongo_params` object
    - `auth_source` string
    - `auth_mechanism` string
  - `postgres_params` object
    - `ssl_mode` string
  - `snowflake_params` object
    - `account` string
    - `schema` string
    - `warehouse` string
    - `role` string
  - `cassandra_params` object
    - `keyspace` string
  - `hive_params` object
    - `auth` string
  - `redis_params` object
    - `db` integer
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `created_by` string — MongoDB ObjectId represented as a hexadecimal string
  - `updated_by` string — MongoDB ObjectId represented as a hexadecimal string

## Response `200`

Database updated successfully

- object
  - `code` integer
  - `message` string
  - `data` object
    - `_id` string — MongoDB ObjectId represented as a hexadecimal string
    - `name` string
    - `description` string
    - `data_source` string — Type of database (mongodb, mysql, etc.)
    - `host` string
    - `port` integer
    - `uri` string
    - `database` string
    - `username` string
    - `password` string
    - `status` string
    - `error` string
    - `active` boolean
    - `active_at` string, date-time
    - `is_default` boolean
    - `mongo_params` object
      - `auth_source` string
      - `auth_mechanism` string
    - `postgres_params` object
      - `ssl_mode` string
    - `snowflake_params` object
      - `account` string
      - `schema` string
      - `warehouse` string
      - `role` string
    - `cassandra_params` object
      - `keyspace` string
    - `hive_params` object
      - `auth` string
    - `redis_params` object
      - `db` integer
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `created_by` string — MongoDB ObjectId represented as a hexadecimal string
    - `updated_by` string — MongoDB ObjectId represented as a hexadecimal string

## Other responses

- `404` — Database not found

## Changes

- **2025-03-03** `14e4eafea538` — 1 breaking, 4 warning, 22 info
  - the response's body type/format changed from `object`/`` to ``/`` for status `200`
  - removed the request property `type`
  - removed the optional property `code` from the response with the `200` status
  - removed the optional property `data` from the response with the `200` status
  - …23 more
- **2025-03-02** `526e5bdf6dee` — 2 breaking, 29 warning, 15 info
  - request body became required
  - added the pattern `^[0-9a-fA-F]{24}$` to the `path` request parameter `id`
  - removed the request property `data`
  - removed the optional property `data/_id` from the response with the `200` status
  - …42 more

[Change history](https://skmtc.dev/crawlab-team/apis/crawlab-api/changes/databases/:id/put.md)

---

[API](https://skmtc.dev/crawlab-team/apis/crawlab-api.md) · [All operations](https://skmtc.dev/crawlab-team/apis/crawlab-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/crawlab-team/crawlab-api/revisions/14e4eafea538/schema)
