canonical: https://jentic.com/apis/amazonaws.com/aws-dms

# AWS Database Migration Service

Jentic publishes the only available OpenAPI specification for AWS Database Migration Service, keeping it validated and agent-ready. AWS Database Migration Service (DMS) moves data between databases - homogeneous (Oracle to Oracle) or heterogeneous (Oracle to PostgreSQL) - with optional ongoing change-data-capture replication. The API covers the full migration lifecycle: replication instances, source and target endpoints, replication tasks, table mappings, premigration assessments, and Fleet Advisor inventory. Use it when an agent needs to orchestrate a migration plan, kick off a replication task, or pull assessment results back into a runbook.

## For AI agents

Provision DMS replication instances, configure source and target endpoints, run replication tasks, and retrieve premigration assessment and Fleet Advisor data.

## Scope

Does not handle ETL transformations, data warehousing query execution, or backup/restore - use for database-to-database migration and replication only.

## Capabilities

- Provision and tear down replication instances with CreateReplicationInstance and DeleteReplicationInstance sized to migration throughput
- Define source and target endpoints for engines like Oracle, MySQL, PostgreSQL, SQL Server, and Aurora via CreateEndpoint
- Start, stop, and resume replication tasks with StartReplicationTask, StopReplicationTask, and table-mapping JSON
- Run premigration assessments to surface schema and data-type compatibility issues before cutover
- Inspect Fleet Advisor collectors and recommendations to plan migrations from on-premises inventory
- Subscribe to event notifications via CreateEventSubscription so cutover and failure events feed downstream tooling

## Use cases

### Plan and Execute a Heterogeneous Migration

Move an on-premises Oracle workload to Amazon Aurora PostgreSQL without long downtime. CreateEndpoint configures both source and target, CreateReplicationInstance provisions the worker, and CreateReplicationTask defines the table mappings and migration type (full load and CDC). The task runs a full load while change-data-capture replicates ongoing transactions until cutover.

Example prompt: Call CreateEndpoint twice (source Oracle, target Aurora PostgreSQL), CreateReplicationInstance with 100GB allocated storage, then CreateReplicationTask with MigrationType full-load-and-cdc.

### Surface Schema Issues Before Cutover

Run StartReplicationTaskAssessmentRun to validate that the source schema converts cleanly to the target engine and surface unsupported data types or index strategies. The assessment results give the migration team a checklist of fixes - rebuilt CLOB columns, missing primary keys, function-based indexes - before kicking off the production migration.

Example prompt: Call StartReplicationTaskAssessmentRun on the configured task, poll DescribeReplicationTaskAssessmentRuns until status is COMPLETED, then DescribeReplicationTaskIndividualAssessments to surface failing checks.

### Inventory On-Premises Databases with Fleet Advisor

Use CreateFleetAdvisorCollector and Fleet Advisor APIs to gather inventory from on-premises databases, then DescribeFleetAdvisorSchemaObjectSummary and recommendation operations to size and plan target environments. The output drives downstream DMS configuration without a manual discovery phase.

Example prompt: Call CreateFleetAdvisorCollector with the collector parameters, then DescribeFleetAdvisorSchemaObjectSummary to inspect the discovered schema.

### Agent-Driven Migration Orchestration

An AI agent connected via Jentic can compose the full migration sequence - provision the replication instance, create endpoints, start the task, run assessments, and notify the team on completion - without writing AWS SDK glue. Jentic returns the matching DMS operation and schema so each step has a structured input contract and the agent can recover from validation errors.

Example prompt: Search Jentic for 'create a DMS replication task', load CreateReplicationTask, execute it with the source/target endpoints, replication instance ARN, and table mappings, then StartReplicationTask.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CreateReplicationInstance | Provision a DMS replication instance |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CreateEndpoint | Define a source or target endpoint |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CreateReplicationTask | Create a replication task |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CreateReplicationSubnetGroup | Create a subnet group for the instance |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CreateEventSubscription | Create an SNS event subscription |
| POST | /#X-Amz-Target=AmazonDMSv20160101.AddTagsToResource | Apply tags to DMS resources |
| POST | /#X-Amz-Target=AmazonDMSv20160101.CancelReplicationTaskAssessmentRun | Cancel a running assessment |

## Key resources

- **Replication Instance** — EC2-backed worker that runs replication tasks.
- **Endpoint** — Source or target database connection definition.
- **Replication Task** — Migration job with table mappings and migration type.
- **Replication Task Assessment Run** — Premigration validation of schema and compatibility.
- **Event Subscription** — SNS-based notifications for replication events.
- **Fleet Advisor Collector** — Inventory collector for on-premises databases.

## Why Jentic

- **Setup:** Wiring AWS Database Migration Service by hand means building SigV4 request signing, resolving the regional dms.{region}.amazonaws.com host, and handling the X-Amz-Target action dispatch plus AWS retries yourself. Through Jentic you install once, import Database Migration Service from the API Directory, store the AWS access keys once, and your agent calls it.
- **Permission scoping:** DMS dispatches every action through a single endpoint with the operation named in the request, so scope the agent to the operations it needs, such as creating a replication task or running a premigration assessment. Destructive operations like deleting a replication instance or endpoint stay out of that set unless you add them.
- **Credential handling:** Your AWS access keys for DMS are stored once, encrypted, by your own Jentic One instance and injected at execution time when the request is signed. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a DMS replication task' or 'run a premigration assessment', and Jentic returns the matching DMS operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **AWS RDS Data API** — HTTP-based access to RDS targets that DMS migrates data into.
- **Amazon DocumentDB** — Document database control plane often used as a DMS target.
- **AWS Data Pipeline** — General-purpose data movement and processing rather than database replication.

## FAQ

### Why is there no official OpenAPI spec for AWS Database Migration Service?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call AWS Database Migration Service via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AWS DMS API use?

DMS uses AWS Signature Version 4 (HMAC) signing with an AWS access key ID and secret access key. Through Jentic, those credentials live encrypted in your Jentic One instance and are injected into signed requests at execution time, so the agent never sees the raw secret access key.

### Can I run change-data-capture between two databases with this API?

Yes. Set MigrationType to cdc or full-load-and-cdc on CreateReplicationTask. DMS continuously replicates committed changes from the source endpoint to the target until the task is stopped, enabling near-zero-downtime cutover.

### What are the rate limits for the AWS DMS API?

DMS shares standard AWS service quotas, which are managed per account and region rather than published as fixed per-second limits in the spec. Account-level limits also apply to the number of replication instances and tasks; ThrottlingException responses should trigger backoff.

### How do I orchestrate a migration through Jentic?

Search Jentic for 'create a DMS replication task', load CreateReplicationTask, execute it with the source endpoint ARN, target endpoint ARN, ReplicationInstanceArn, and TableMappings JSON. Run pip install jentic and use the async search and execute pattern.

### Does this API include the data conversion logic, or just the orchestration?

DMS itself performs both - it executes the replication and applies built-in data type conversion as part of running the task. The API exposes orchestration: defining endpoints, replication instances, and tasks, and starting and stopping them.

### Can I limit what my agent is allowed to do with the AWS DMS API?

Yes. Because you self-host Jentic One, your own rules decide which DMS operations and AWS credentials the agent may use, and DMS dispatches every action through a single endpoint with the operation named in the request, so you can scope the agent to just the operations it needs, such as CreateReplicationTask or StartReplicationTaskAssessmentRun. Destructive operations like DeleteReplicationInstance and DeleteEndpoint stay outside that set unless you explicitly add them. The AWS access keys are held encrypted by your instance and injected only when a permitted request is signed, so the agent never sees the raw secret.
