# Amazon RDS

> Run your Amazon RDS databases from a workflow: create PostgreSQL, MySQL, MariaDB and SQL Server Express instances, stop them overnight and start them in the morning, take and restore snapshots, change their settings, and read their events and log files.

App · Databases · 20 actions. Web page: https://docs.lodol.com/docs/integrations/amazon-rds

## Actions

### Add tags

Add tags to a DB instance or DB snapshot. A tag whose name already exists is overwritten; other tags are kept.

**Inputs**

- Instance or snapshot (`resource`, text, required): A DB instance or DB snapshot: its ARN, the link to its console page, or its identifier (then say which it is below).
- Tags (`tags`, object, required): Tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.
- Identifier is a (`resource_type`, text): What a bare identifier names. Ignored for an ARN or link. One of: `db-instance` (DB instance), `db-snapshot` (DB snapshot). Default: `db-instance`.

**Outputs**

- `resource_arn` (text)
- `tags` (object): The tags this step wrote.

**Example output**

```json
{
  "resource_arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "tags": {
    "team": "platform"
  }
}
```

### Create a DB instance

Create a DB instance. It takes 5 to 15 minutes to become available; 'Get a DB instance' shows its status. The defaults (db.t4g.micro, 20 GiB gp2, Single-AZ) are what the AWS Free plan covers. It uses the region's default VPC.

**Inputs**

- Instance identifier (`db_instance_identifier`, text, required): A name for the new instance, unique in the region: 1 to 63 letters, digits or hyphens, starting with a letter. Stored in lowercase.
- Engine (`engine`, text, required): The database engine. One of: `postgres` (PostgreSQL), `mysql`, `mariadb`, `sqlserver-ex` (SQL Server Express). Default: `postgres`.
- Engine version (`engine_version`, text): Pick a version, or leave empty for the engine's default version.
- Instance class (`db_instance_class`, text): The instance size. db.t4g.micro and db.t3.micro are the ones the AWS Free plan covers; 'List orderable instance classes' shows what else this region offers. Default: `db.t4g.micro`.
- Master username (`master_username`, text, required): The database's admin user: 1 to 16 letters, digits or underscores, starting with a letter.
- Master password (`master_user_password`, text): The admin user's password: 8 to 41 characters for MySQL and MariaDB, 8 to 128 otherwise, without / " or @. It is kept in this workflow's steps, so for a shared workflow tick 'Let AWS manage the password' instead.
- Let AWS manage the password (`manage_master_user_password`, true/false): AWS generates the password and keeps it in Secrets Manager (about $0.40 a month after its free trial). Leave the password empty when ticked. Default: `false`.
- Storage (GiB) (`allocated_storage`, number): From 20 GiB. The AWS Free plan covers 20 GiB of General Purpose storage. From 20 to 65536. Default: `20`.
- Storage type (`storage_type`, text): General Purpose SSD. gp2 is the free-plan choice. One of: `gp2` (General Purpose SSD (gp2)), `gp3` (General Purpose SSD (gp3)). Default: `gp2`.
- Initial database name (`db_name`, text): A database to create inside the instance: letters, digits and underscores. Leave empty for none; must be empty for SQL Server.
- Port (`port`, number): Leave empty for the engine's usual port (5432 for PostgreSQL, 3306 for MySQL and MariaDB, 1433 for SQL Server).
- Publicly accessible (`publicly_accessible`, true/false): Give the instance a public address. Off keeps it reachable only from inside the VPC. Default: `false`.
- Multi-AZ (`multi_az`, true/false): Keep a standby copy in a second Availability Zone. Not covered by the AWS Free plan: it doubles the instance cost. Default: `false`.
- Backup retention (days) (`backup_retention_period`, number): Days of automated backups to keep, 0 to 35. 0 turns automated backups off. Leave empty for AWS's default of 1. From 0 to 35.
- Encrypt storage (`storage_encrypted`, true/false): Encrypt the storage with the account's AWS managed key. Default: `true`.
- Deletion protection (`deletion_protection`, true/false): Refuse every delete until this is turned off again. Default: `false`.
- VPC security groups (`vpc_security_group_ids`, list): Security group IDs such as sg-0123456789abcdef0, which decide who can connect. Leave empty for the VPC's default group.
- Tags (`tags`, object): Tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "creating",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Create a DB snapshot

Take a manual snapshot of an available instance. It is kept until deleted, and takes a few minutes to become available.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Snapshot name (`db_snapshot_identifier`, text, required): A name unique in the region: letters, digits and hyphens, starting with a letter.
- Tags (`tags`, object): Tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

**Outputs**

- `allocated_storage` (number)
- `arn` (text)
- `availability_zone` (text)
- `db_instance_identifier` (text)
- `db_snapshot_identifier` (text)
- `encrypted` (true/false)
- `engine` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `master_username` (text)
- `percent_progress` (number)
- `port` (number)
- `snapshot_create_time` (text)
- `snapshot_type` (text)
- `status` (text): Such as creating, available or deleting.
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:snapshot:orders-db-before-upgrade",
  "availability_zone": "us-east-1a",
  "db_instance_identifier": "orders-db",
  "db_snapshot_identifier": "orders-db-before-upgrade",
  "encrypted": true,
  "engine": "postgres",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "master_username": "dbadmin",
  "percent_progress": 100,
  "port": 5432,
  "snapshot_create_time": "2026-09-28T10:00:00+00:00",
  "snapshot_type": "manual",
  "status": "creating",
  "storage_type": "gp2",
  "tags": {},
  "vpc_id": "vpc-0a1b2c3d4e5f67890"
}
```

### Delete a DB instance

Delete a DB instance. A final snapshot is taken first unless you skip it; without one the data is gone. Refused while deletion protection is on.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Final snapshot name (`final_snapshot_identifier`, text): A name for the snapshot taken before deleting: letters, digits and hyphens, starting with a letter. Required unless the final snapshot is skipped.
- Skip the final snapshot (`skip_final_snapshot`, true/false): Delete without a final snapshot. Cannot be undone. Default: `false`.
- Delete automated backups (`delete_automated_backups`, true/false): Also delete the instance's automated backups now. Off keeps them until their retention period ends. Default: `true`.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "deleting",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Delete a DB snapshot

Permanently delete a manual snapshot. Automated snapshots cannot be deleted; they expire with the backup retention period.

**Inputs**

- DB snapshot (`db_snapshot_identifier`, text, required): The snapshot. Give its identifier, its ARN, or the link to its page in the RDS console. 'List DB snapshots' shows them; automated ones start with 'rds:'.

**Outputs**

- `allocated_storage` (number)
- `arn` (text)
- `availability_zone` (text)
- `db_instance_identifier` (text)
- `db_snapshot_identifier` (text)
- `encrypted` (true/false)
- `engine` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `master_username` (text)
- `percent_progress` (number)
- `port` (number)
- `snapshot_create_time` (text)
- `snapshot_type` (text)
- `status` (text): Such as creating, available or deleting.
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:snapshot:orders-db-before-upgrade",
  "availability_zone": "us-east-1a",
  "db_instance_identifier": "orders-db",
  "db_snapshot_identifier": "orders-db-before-upgrade",
  "encrypted": true,
  "engine": "postgres",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "master_username": "dbadmin",
  "percent_progress": 100,
  "port": 5432,
  "snapshot_create_time": "2026-09-28T10:00:00+00:00",
  "snapshot_type": "manual",
  "status": "deleted",
  "storage_type": "gp2",
  "tags": {},
  "vpc_id": "vpc-0a1b2c3d4e5f67890"
}
```

### Get a DB instance

Get one DB instance: its status, endpoint to connect to, size, settings and any changes waiting to be applied.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "available",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### List DB instances

List the DB instances in the connected region, one page at a time, optionally only those of one engine.

**Inputs**

- Engine (`engine`, text): Only list instances of this engine, such as postgres, mysql or aurora-postgresql. Leave empty for all.
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.
- Max records (`max_records`, number): How many to return in one page, from 20 to 100. From 20 to 100. Default: `100`.

**Outputs**

- `count` (number)
- `db_instances` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "db_instances": [
    {
      "allocated_storage": 20,
      "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
      "auto_minor_version_upgrade": true,
      "automatic_restart_time": null,
      "availability_zone": "us-east-1a",
      "backup_retention_period": 1,
      "db_instance_class": "db.t4g.micro",
      "db_instance_identifier": "orders-db",
      "db_name": "orders",
      "db_subnet_group_name": "default",
      "deletion_protection": false,
      "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
      "endpoint_port": 5432,
      "engine": "postgres",
      "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
      "engine_version": "17.4",
      "instance_create_time": "2026-09-01T09:00:00+00:00",
      "latest_restorable_time": "2026-09-28T09:55:00+00:00",
      "master_user_secret_arn": null,
      "master_username": "dbadmin",
      "max_allocated_storage": null,
      "multi_az": false,
      "pending_modified_values": {},
      "preferred_backup_window": "03:00-03:30",
      "preferred_maintenance_window": "sun:05:00-sun:05:30",
      "publicly_accessible": false,
      "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
      "status": "available",
      "storage_encrypted": true,
      "storage_type": "gp2",
      "tags": {
        "team": "platform"
      },
      "vpc_id": "vpc-0a1b2c3d4e5f67890",
      "vpc_security_group_ids": [
        "sg-0123456789abcdef0"
      ]
    }
  ],
  "next_marker": null
}
```

### List DB snapshots

List DB snapshots in the region: all of them, one instance's, or one snapshot by name.

**Inputs**

- DB instance (`db_instance_identifier`, text): Only this instance's snapshots. Leave empty for every instance's.
- DB snapshot (`db_snapshot_identifier`, text): Only this snapshot, by identifier, ARN or console link.
- Snapshot type (`snapshot_type`, text): Only this type. Leave empty for both. One of: `manual` (Manual (taken by a person or a step)), `automated` (Automated (daily backups)).
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.
- Max records (`max_records`, number): How many to return in one page, from 20 to 100. From 20 to 100. Default: `100`.

**Outputs**

- `count` (number)
- `db_snapshots` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "db_snapshots": [
    {
      "allocated_storage": 20,
      "arn": "arn:aws:rds:us-east-1:123456789012:snapshot:orders-db-before-upgrade",
      "availability_zone": "us-east-1a",
      "db_instance_identifier": "orders-db",
      "db_snapshot_identifier": "orders-db-before-upgrade",
      "encrypted": true,
      "engine": "postgres",
      "engine_version": "17.4",
      "instance_create_time": "2026-09-01T09:00:00+00:00",
      "master_username": "dbadmin",
      "percent_progress": 100,
      "port": 5432,
      "snapshot_create_time": "2026-09-28T10:00:00+00:00",
      "snapshot_type": "manual",
      "status": "available",
      "storage_type": "gp2",
      "tags": {},
      "vpc_id": "vpc-0a1b2c3d4e5f67890"
    }
  ],
  "next_marker": null
}
```

### List engine versions

List the engine versions RDS offers in this region, or only each engine's default version.

**Inputs**

- Engine (`engine`, text): Only this engine's versions. One of: `postgres` (PostgreSQL), `mysql`, `mariadb`, `sqlserver-ex` (SQL Server Express).
- Default version only (`default_only`, true/false): Only the version RDS picks when none is given. Default: `false`.
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.
- Max records (`max_records`, number): How many to return in one page, from 20 to 100. From 20 to 100. Default: `100`.

**Outputs**

- `count` (number)
- `engine_versions` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "engine_versions": [
    {
      "engine": "postgres",
      "engine_description": "PostgreSQL",
      "engine_version": "17.4",
      "exportable_log_types": [
        "postgresql",
        "upgrade"
      ],
      "major_engine_version": "17",
      "parameter_group_family": "postgres17",
      "status": "available",
      "supports_read_replica": true,
      "version_description": "PostgreSQL 17.4-R1"
    }
  ],
  "next_marker": null
}
```

### List events

List RDS events such as restarts, backups, failovers and configuration changes. RDS keeps 14 days; with no times given it returns the last hour.

**Inputs**

- Source type (`source_type`, text): Only events about this kind of resource. With a source given and this empty, DB instance is assumed. One of: `db-instance` (DB instance), `db-snapshot` (DB snapshot), `db-parameter-group` (DB parameter group).
- Source (`source_identifier`, text): Only events about this instance, snapshot or parameter group, by identifier.
- From (`start_time`, date and time): Events at or after this time.
- Until (`end_time`, date and time): Events at or before this time.
- Last N minutes (`duration_minutes`, number): Instead of From and Until: events in the last this many minutes, up to 20,160 (14 days). From 1 to 20160.
- Categories (`event_categories`, list): Only these categories, such as availability, backup, configuration change or failure.
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.
- Max records (`max_records`, number): How many to return in one page, from 20 to 100. From 20 to 100. Default: `100`.

**Outputs**

- `count` (number)
- `events` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "events": [
    {
      "date": "2026-09-28T10:00:00+00:00",
      "event_categories": [
        "availability"
      ],
      "message": "DB instance restarted",
      "source_arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
      "source_identifier": "orders-db",
      "source_type": "db-instance"
    }
  ],
  "next_marker": null
}
```

### List log files

List a DB instance's database log files, with size and last write.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Name contains (`filename_contains`, text): Only files whose name contains this text.
- Written since (`file_last_written`, date and time): Only files written at or after this time.
- Larger than (bytes) (`file_size`, number): Only files larger than this many bytes. At least 0.
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.

**Outputs**

- `count` (number)
- `log_files` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "log_files": [
    {
      "last_written": "2026-09-28T10:59:00+00:00",
      "log_file_name": "error/postgresql.log.2026-09-28-10",
      "size": 2048
    }
  ],
  "next_marker": null
}
```

### List orderable instance classes

List the instance classes that can be created in this region for an engine, one row per class, version and storage type. Set the version and class to check one combination.

**Inputs**

- Engine (`engine`, text, required): The database engine. One of: `postgres` (PostgreSQL), `mysql`, `mariadb`, `sqlserver-ex` (SQL Server Express). Default: `postgres`.
- Engine version (`engine_version`, text): Only this version. Leave empty for all.
- Instance class (`db_instance_class`, text): Only this class, such as db.t4g.micro.
- Marker (`marker`, text): To fetch the next page, the 'next_marker' an earlier run of this step returned. Leave empty for the first page.
- Max records (`max_records`, number): How many to return in one page, from 20 to 100. From 20 to 100. Default: `100`.

**Outputs**

- `count` (number)
- `instance_classes` (list)
- `next_marker` (text): Pass this as 'Marker' to fetch the next page. Null on the last page.

**Example output**

```json
{
  "count": 1,
  "instance_classes": [
    {
      "availability_zones": [
        "us-east-1a",
        "us-east-1b"
      ],
      "db_instance_class": "db.t4g.micro",
      "engine": "postgres",
      "engine_version": "17.4",
      "license_model": "postgresql-license",
      "max_storage_size": 6144,
      "min_storage_size": 20,
      "multi_az_capable": true,
      "read_replica_capable": true,
      "storage_type": "gp2",
      "supports_storage_encryption": true
    }
  ],
  "next_marker": null
}
```

### List tags

List the tags on a DB instance or DB snapshot.

**Inputs**

- Instance or snapshot (`resource`, text, required): A DB instance or DB snapshot: its ARN, the link to its console page, or its identifier (then say which it is below).
- Identifier is a (`resource_type`, text): What a bare identifier names. Ignored for an ARN or link. One of: `db-instance` (DB instance), `db-snapshot` (DB snapshot). Default: `db-instance`.

**Outputs**

- `resource_arn` (text)
- `tags` (object): Tag name to tag value.

**Example output**

```json
{
  "resource_arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "tags": {
    "team": "platform"
  }
}
```

### Modify a DB instance

Change an instance's settings. Only the fields filled in, and the choices not left unchanged, are sent. Without 'Apply immediately' most changes wait for the weekly maintenance window; a class or storage change can restart the instance.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Apply immediately (`apply_immediately`, true/false): Apply now instead of in the next maintenance window. Public access changes always apply at once. Default: `false`.
- New identifier (`new_db_instance_identifier`, text): Rename the instance. Its endpoint changes too.
- Instance class (`db_instance_class`, text): The instance size. db.t4g.micro and db.t3.micro are the ones the AWS Free plan covers; 'List orderable instance classes' shows what else this region offers.
- Storage (GiB) (`allocated_storage`, number): The new size. It can only grow, by at least 10 percent. From 20 to 65536.
- Backup retention (days) (`backup_retention_period`, number): Days of automated backups to keep, 0 to 35. From 0 to 35.
- Engine version (`engine_version`, text): Upgrade to this version, such as 17.4. 'List engine versions' shows them.
- New master password (`master_user_password`, text): A new password for the admin user, without / " or @. It is kept in this workflow's steps.
- Let AWS manage the password (`manage_master_user_password`, text): Move the password into Secrets Manager (On) or back (Off). One of: `unchanged` (Leave unchanged), `on`, `off`. Default: `unchanged`.
- Multi-AZ (`multi_az`, text): A standby in a second Availability Zone. Not free. One of: `unchanged` (Leave unchanged), `on`, `off`. Default: `unchanged`.
- Publicly accessible (`publicly_accessible`, text): Whether the instance has a public address. One of: `unchanged` (Leave unchanged), `on`, `off`. Default: `unchanged`.
- Deletion protection (`deletion_protection`, text): Whether deletes are refused. One of: `unchanged` (Leave unchanged), `on`, `off`. Default: `unchanged`.
- Auto minor version upgrade (`auto_minor_version_upgrade`, text): Whether AWS applies minor engine upgrades in the maintenance window. One of: `unchanged` (Leave unchanged), `on`, `off`. Default: `unchanged`.
- VPC security groups (`vpc_security_group_ids`, list): Security group IDs such as sg-0123456789abcdef0, which decide who can connect. Leave empty for the VPC's default group.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "modifying",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Read a log file

Read part of a log file, up to 1 MB. With nothing else set it returns the newest lines; set Lines and Marker 0 to read from the start, then pass 'next_marker' on to read on.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Log file (`log_file_name`, text, required): The file's full name, such as error/postgresql.log.2026-09-28-10. 'List log files' shows them.
- Lines (`number_of_lines`, number): How many lines to return. Leave empty for up to 10,000. At least 1.
- Marker (`marker`, text): 0 to read from the start of the file, or the 'next_marker' an earlier read returned.

**Outputs**

- `additional_data_pending` (true/false)
- `db_instance_identifier` (text)
- `log_file_data` (text)
- `log_file_name` (text)
- `next_marker` (text): Pass this as 'Marker' to read on from here.

**Example output**

```json
{
  "additional_data_pending": false,
  "db_instance_identifier": "orders-db",
  "log_file_data": "2026-09-28 10:00:00 UTC::@:[1]:LOG:  database system is ready\n",
  "log_file_name": "error/postgresql.log.2026-09-28-10",
  "next_marker": "10:2048"
}
```

### Reboot a DB instance

Restart the database engine, for example to apply a parameter change. The instance is unavailable for a minute or so.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Force a failover (`force_failover`, true/false): Multi-AZ instances only: reboot by switching to the standby. Default: `false`.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "rebooting",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Remove tags

Remove tags, by name, from a DB instance or DB snapshot.

**Inputs**

- Instance or snapshot (`resource`, text, required): A DB instance or DB snapshot: its ARN, the link to its console page, or its identifier (then say which it is below).
- Tag names (`tag_keys`, list, required): The names of the tags to remove.
- Identifier is a (`resource_type`, text): What a bare identifier names. Ignored for an ARN or link. One of: `db-instance` (DB instance), `db-snapshot` (DB snapshot). Default: `db-instance`.

**Outputs**

- `removed_tag_keys` (list)
- `resource_arn` (text)

**Example output**

```json
{
  "removed_tag_keys": [
    "team"
  ],
  "resource_arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db"
}
```

### Restore from a snapshot

Create a new DB instance from a snapshot, keeping the snapshot. The new instance is a separate, billed instance and takes 5 to 15 minutes to become available.

**Inputs**

- DB snapshot (`db_snapshot_identifier`, text, required): The snapshot. Give its identifier, its ARN, or the link to its page in the RDS console. 'List DB snapshots' shows them; automated ones start with 'rds:'.
- New instance identifier (`db_instance_identifier`, text, required): A name for the new instance, unique in the region: 1 to 63 letters, digits or hyphens, starting with a letter. Stored in lowercase.
- Instance class (`db_instance_class`, text): Leave empty to use the snapshot's original class. The instance size. db.t4g.micro and db.t3.micro are the ones the AWS Free plan covers; 'List orderable instance classes' shows what else this region offers.
- Storage type (`storage_type`, text): Leave empty to keep the snapshot's storage type. One of: `gp2` (General Purpose SSD (gp2)), `gp3` (General Purpose SSD (gp3)).
- Publicly accessible (`publicly_accessible`, true/false): Give the instance a public address. Off keeps it reachable only from inside the VPC. Default: `false`.
- Multi-AZ (`multi_az`, true/false): Keep a standby copy in a second Availability Zone. Not covered by the AWS Free plan: it doubles the instance cost. Default: `false`.
- Deletion protection (`deletion_protection`, true/false): Refuse every delete until this is turned off again. Default: `false`.
- VPC security groups (`vpc_security_group_ids`, list): Security group IDs such as sg-0123456789abcdef0, which decide who can connect. Leave empty for the VPC's default group.
- Tags (`tags`, object): Tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "creating",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Start a DB instance

Start a stopped DB instance. It takes a few minutes to become available.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": null,
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "starting",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```

### Stop a DB instance

Stop an available DB instance so it stops accruing instance hours (storage is still billed). AWS starts it again by itself after 7 days. Not for Aurora.

**Inputs**

- DB instance (`db_instance_identifier`, text, required): The DB instance. Pick one, or give its identifier, its ARN, or the link to its page in the RDS console.
- Snapshot before stopping (`snapshot_identifier`, text): Optional name for a snapshot taken just before it stops.

**Outputs**

- `allocated_storage` (number): In GiB.
- `arn` (text)
- `auto_minor_version_upgrade` (true/false)
- `automatic_restart_time` (text): When a stopped instance will be started again by AWS.
- `availability_zone` (text)
- `backup_retention_period` (number)
- `db_instance_class` (text)
- `db_instance_identifier` (text)
- `db_name` (text)
- `db_subnet_group_name` (text)
- `deletion_protection` (true/false)
- `endpoint_address` (text): The host name to connect to. Null while creating.
- `endpoint_port` (number)
- `engine` (text)
- `engine_lifecycle_support` (text)
- `engine_version` (text)
- `instance_create_time` (text)
- `latest_restorable_time` (text)
- `master_user_secret_arn` (text): The Secrets Manager secret holding the password, if AWS manages it.
- `master_username` (text)
- `max_allocated_storage` (number)
- `multi_az` (true/false)
- `pending_modified_values` (object): Changes waiting to be applied, by setting name.
- `preferred_backup_window` (text)
- `preferred_maintenance_window` (text)
- `publicly_accessible` (true/false)
- `resource_id` (text)
- `status` (text): Such as creating, available, modifying, rebooting, stopping, stopped, starting or deleting.
- `storage_encrypted` (true/false)
- `storage_type` (text)
- `tags` (object): Tag name to tag value.
- `vpc_id` (text)
- `vpc_security_group_ids` (list)

**Example output**

```json
{
  "allocated_storage": 20,
  "arn": "arn:aws:rds:us-east-1:123456789012:db:orders-db",
  "auto_minor_version_upgrade": true,
  "automatic_restart_time": "2026-10-05T10:00:00+00:00",
  "availability_zone": "us-east-1a",
  "backup_retention_period": 1,
  "db_instance_class": "db.t4g.micro",
  "db_instance_identifier": "orders-db",
  "db_name": "orders",
  "db_subnet_group_name": "default",
  "deletion_protection": false,
  "endpoint_address": "orders-db.c9akciq32.us-east-1.rds.amazonaws.com",
  "endpoint_port": 5432,
  "engine": "postgres",
  "engine_lifecycle_support": "open-source-rds-extended-support-disabled",
  "engine_version": "17.4",
  "instance_create_time": "2026-09-01T09:00:00+00:00",
  "latest_restorable_time": "2026-09-28T09:55:00+00:00",
  "master_user_secret_arn": null,
  "master_username": "dbadmin",
  "max_allocated_storage": null,
  "multi_az": false,
  "pending_modified_values": {},
  "preferred_backup_window": "03:00-03:30",
  "preferred_maintenance_window": "sun:05:00-sun:05:30",
  "publicly_accessible": false,
  "resource_id": "db-ABCDEFGHIJKLMNOPQRSTUVWXY",
  "status": "stopping",
  "storage_encrypted": true,
  "storage_type": "gp2",
  "tags": {
    "team": "platform"
  },
  "vpc_id": "vpc-0a1b2c3d4e5f67890",
  "vpc_security_group_ids": [
    "sg-0123456789abcdef0"
  ]
}
```
